C(区分大小写) Delphi(不区分大小写) PHP(区分大小写)
整型变量的定义
1
2
3
4
5
6
7
char a = 'a';         /* 8位有符号*/
int a=10;             /* 16位有符号*/
unsigned int a = 10;  /* 16位无符号*/
short a = 10;         /* 16位有符号*/
unsigned short a = 10;/* 16位无符号*/
long a = 10;          /* 32位有符号*/
unsigned long a = 10; /* 32位无符号*/
1
2
3
4
5
6
7
I: ShortInt{ 8位有符号}
I: Byte;      { 8位无符号}
I: SmallInt{ 16位有符号}
I: Word;      { 16位无符号}
I: Integer;   { 32位有符号}
I: Cardinal{ 32位无符号}
I: Int64;     { 64位有符号}
1
$i = 10;  /* 变量以$开头*/
实型变量的定义
1
2
3
float a = 1.0;         /* 4字节*/
double a = 1.0;        /* 8字节*/
long double a = 1.0;   /* 10字节*/
1
2
3
4
a: Single;    { 4字节}
b: Real48;    { 6字节}
c: Double;    { 8字节}
d: Extended{ 10字节}
1
$a = 3.14;
字符变量的定义
1
char a = 'a';          /*1字节*/
1
2
a: Char;      { 1字节}
a: WideChar{ 2字节}
1
$a = 'a';
固定长度字符串
1
a: ShortString;
1
$a = 'a';
动态字符串
1
a: AnsiString;{ 一般为String}
1
$a = 'Hello!';
以NULL结束的字符串
1
char a[] = "Hello!";
1
a: PChar;
1字节布尔变量 任何1字节数
1
a: Boolean;
任何变量都可以
加,减,乘,浮点除 +,-,*,/ +,-,*,/ +,-,*,/
整除
1
a = 3 / 2;  /*运算符两边都是整型*/
1
a := a div b; { a,b都是整型}
1
$a = 3 / 2;
取模
1
a = a % b;
1
a := a mod b;
1
$a = $a % $b;
赋值
1
a = b;
1
a := b;
1
$a = $b;
比较
1
if (a == 12) ...;
1
if a = 23 then ...;
1
if ($a == 23) ...;
不等于
1
if (a != 23) ...;
1
if a <> 23 then ...;
1
if ($a != 23) ...;
小于,大于,小于等于,大于等于 <,>,<=,>= <,>,<=,>= <,>,<=,>=
逻辑与
1
if (a && b) ...;
1
if (a = 2) and (b = 3) then ...;
1
if ($a && $b) ...;
逻辑或
1
if (a || b) ...;
1
if (a = 2) or (b = 2) then ...;
1
if ($a || $b) ...;
逻辑非
1
if (!a) ...;
1
if not (a = 2) then ...;
1
if (!$a) ...;
数组定义
1
int a[10] = {0};
1
a: array[0..10] of Integer;
1
$MyArray = array(1,2,3,4);
记录类型
1
2
3
4
typedef struct{
  int i;
  double d;
}MyRes;
1
2
3
4
5
Type
  MyRec = record
    i: Integer;
    d: Double;
  end;
 
指针
1
int *a;
1
a: ^Integer;
 
判断语句
1
2
3
4
5
6
if (a == 2)
{
  /* 为真执行*/
}else{
  /* 为假执行*/
};
1
2
3
4
5
6
if a = 2 then
begin
  { 为真执行}
end else begin
  { 为假执行}
end;
1
2
3
4
5
6
if ($a == 2)
{
  /* 为真执行*/
}else{
  /* 为假执行*/
};
多重判断
1
2
3
4
5
6
7
8
9
10
11
12
switch (expr){
  case expr1:
    DoSomething;
    break;
  case expr2:
    DoSomething;
    Break;
  case expr3:
    DoSomething;
    Break;
  default: exprN;
}
1
2
3
4
5
6
7
8
case Variable of
  101: DoSomething;
  102:
    begin
    end;
  103: DoAnotherthing;
  else DoTheDefault;
end;
1
2
3
4
5
6
7
switch (expr){
  case expr1:
    DoSomething;
    break;
  case expr2:
  default: exprN;
}
for循环
1
2
3
for(expr1;expr2;expr3){
  DoSomething;
}
1
2
3
4
5
6
7
for i := 10 to 20 do
begin
end;
 
for i := 20 downto 10 do
begin
end;
1
2
3
for(expr1;expr2;expr3){
  DoSomething;
}
while循环(先判断)
1
2
3
while(expr1)
{
}
1
2
3
while(a = 30) do
begin
end;
1
2
3
while(expr1)
{
}
while循环(后判断)
1
2
3
do
{
}while(expr1);
1
2
3
repeat
  inc(c);
until c > 100;
1
2
3
do
{
}while(expr1);
跳出循环
1
2
break;    /* 跳出循环*/
continue; /* 跳出本次进入下一循环*/
1
2
break;    /* 跳出循环*/
continue; /* 跳出本次进入下一循环*/
1
2
break;    /* 跳出循环*/
continue; /* 跳出本次进入下一循环*/

PHP & Delphi 語法的更多相关文章

  1. Delphi APP 開發入門(六)Object Pascal 語法初探

    Delphi APP 開發入門(六)Object Pascal 語法初探 分享: Share on facebookShare on twitterShare on google_plusone_sh ...

  2. 用Razor語法寫範本-RazorEngine組件介紹【转——非常好,可以用它来代替NVelocity】

    RazorEngine 官網網址:http://razorengine.codeplex.com 在找到RazorEngine之前曾經想過其他的方案,如T4與V8 Engine載jquery.temp ...

  3. 開賣!下集 -- ASP.NET 4.5 專題實務(II)-範例應用與 4.5新功能【VB/C# 雙語法】

    開賣!下集 -- ASP.NET 4.5 專題實務(II)-範例應用與 4.5新功能[VB/C# 雙語法] 我.....作者都沒拿到書呢! 全台灣最專業的電腦書店 -- 天瓏書局 已經開賣了! 感謝天 ...

  4. vue起步和模板語法

    vue構造器里有哪些內容: var a=new Vue({}) 模板語法: 文本插值: html: html的屬性里的值應該使用v-bind: 表達式: 指令; 參數:v-bind,v-on 雙向用戶 ...

  5. 用Razor語法寫範本-RazorEngine組件介紹

    最近剛好有要寫寄Email的程式,在代碼中寫HTML覺得很呆,抽出代碼外寫到txt或html檔當範本,由程式執行時在載入檔案時用Regex換關鍵字又覺得不夠好用,而且因為有時會有要判斷一些條件,就會寫 ...

  6. 查看LINQ Expression編譯後的SQL語法(转)

    在用了LINQ語法之後的一個月,我幾乎把SQL語法全部拋到腦後了,不過 LINQ好用歸好用,但是實際上操作資料庫的還是SQL語法,如果不知道LINQ語法 編譯過後產生怎樣的SQL語法,一不小心效能就會 ...

  7. Java學習筆記(基本語法)

    本文件是以學習筆記的概念為基礎,用於自我的複習紀錄,不過也開放各位的概念指證.畢竟學習過程中難免會出現觀念錯誤的問題.也感謝各位的觀念指證. 安裝JDK 在Oracle網站中找自己系統的JDK下載位置 ...

  8. sql server存儲過程語法

    -- 变量的声明,sql里面声明变量时必须在变量前加@符号    DECLARE @I INT -- 变量的赋值,变量赋值时变量前必须加set    SET @I = 30 -- 声明多个变量    ...

  9. C#常用語法糖(Csharp Syntactic sugar)

    首先需要声明的是“语法糖”这个词绝非贬义词,它可以给我带来方便,是一种便捷的写法,编译器会帮我们做转换:而且可以提高开发编码的效率,在性能上也不会带来损失.这让java开发人员羡慕不已,呵呵. 1.  ...

随机推荐

  1. Android 异步Http框架简介和实现原理

    在前几篇文章中<Android 采用get方式提交数据到服务器><Android 采用post方式提交数据到服务器><Android 采用HttpClient提交数据到服 ...

  2. 【原】ios打包ipa的四种实用方法(.app转.ipa)

    总结一下,目前.app包转为.ipa包的方法有以下几种: 1.Apple推荐的方式,即实用xcode的archive功能 Xcode菜单栏->Product->Archive->三选 ...

  3. Iconfont-阿里巴巴矢量图标库

    http://iconfont.cn/ 网站为:

  4. 关于学习javascript的一些建议

    有被朋友或同事问到过,要如何学习前端技术,他们大多是已经掌握其他语言的程序员,或是计算机相关专业的在校生. 每次被问到,总要组织回忆一番,本着DRY原则,我还是根据我学习javascript(下文都简 ...

  5. Javascript 优化项目代码技巧之语言基础(二)

        上一篇随笔介绍了如何正确判断对象类型.避免变量污染,特殊值(null.undefined.NaN)的使用,以及其他Javascript中常用关键字与方法的优化,这篇随笔将着重介绍Javascr ...

  6. javascript-建造者模式

    建造者模式笔记 1.工厂模式主要是为了创建对象实例或者类簇(抽象工厂),关心的是最终产出(创建)的是什么,不关心你创建的整个过程,仅仅需要知道你最终创建的结果 2.建造者模式目的也是为了创建对象,但是 ...

  7. hibernate和mybatis的区别

    本文出自 alicejiyayun原创 第一章     Hibernate与MyBatis Hibernate 是当前最流行的O/R mapping框架,它出身于sf.NET,现在已经成为Jboss的 ...

  8. 安装 gcc-c++ 时报错和原有 gcc 版本冲突

    Centos 6.7 安装 gcc-c++时报下面的错误: Resolving Dependencies --> Running transaction check ---> :-.el6 ...

  9. mongodb的备份

    转载请附原文链接:http://www.cnblogs.com/wingsless/p/5672057.html mongodb现在为止还是没有像XtraBackup这样好用的备份工具,因此一般来说会 ...

  10. A cost-effective recommender system for taxi drivers

    一个针对出租车司机有效花费的推荐系统 摘要 GPS技术和新形式的城市地理学改变了手机服务的形式.比如说,丰富的出租车GPS轨迹使得出做租车领域有新方法.事实上,最近很多工作是在使用出租车GPS轨迹数据 ...