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.mk相关知识

    Android.mk是Android提供的一种makefile文件,用来指定诸如编译生成so库名.引用的头文件目录.需要编译的.c/.cpp文件和.a静态库文件等.要掌握jni,就必须熟练掌握Andr ...

  2. iOS 学习 - 12.NSMutableAttributedString 计算高度

    计算 NSMutableAttributedString 高度,必须要有两个属性 -(void)test{ UILabel *label = [[UILabel alloc]initWithFrame ...

  3. php底层运行原理

    http://www.cnblogs.com/phphuaibei/archive/2011/09/13/2174927.html

  4. JAVA 8 Lambda表达式-Lambda Expressions

    Lambda表达式介绍 Lambda表达式是在java规范提案JSR 335中定义的,Java 8 中引入了Lambda表达式,并被认为是Java 8最大的新特性,Lambda表达式促进了函数式编程, ...

  5. Symantec Backup Exec 报"Access denied to directory xxx" Error Code E0008488

    使用Symantec Backup Exec将几台Linux服务器上的RMAN备份收带时,偶尔会遇到作业备份失败的情况,检查Job History,就会发现有“Access denied to dir ...

  6. dpdk在虚拟机上出错处理

    目录 1. 所用系统与软件版本 2. 虚拟机配置 3. Ubuntu 12.04上的配置 3.1 准备 3.2 通过setup脚本进行配置 3.3 通过命令配置 4. CentOS 7.0上的配置 4 ...

  7. linux基础-第七单元 用户、群组及权限的深入讨论

    怎样查看文件的权限 ls命令详解 root用户及文件的安全控制 什么是root用户 用户分类 文件操作权限 文件操作权限的字符表示 chown chgrp 使用符号表示法设定文件或目录上的权限 chm ...

  8. Interlocked系列函数线程同步的缺陷

    1. Code int Work() { while (m_lInterlockedData < 10) { InterlockedIncrement(&m_lInterlockedDa ...

  9. 浅析Java中的访问权限控制

    浅析Java中的访问权限控制 今天我们来一起了解一下Java语言中的访问权限控制.在讨论访问权限控制之前,先来讨论一下为何需要访问权限控制.考虑两个场景: 场景1:工程师A编写了一个类ClassA,但 ...

  10. 好好写,好好干-PHP基础(二)

    hi 好久没写,昨儿一写,感觉还是有人看的,至少是有一两个评论的~~好好干! 每天需要坚持的就那么4件事儿:写这个,学一点法语,看会儿书,锻炼.单身狗也有好处. 1.PHP 一.PHP基础(二) 1. ...