这篇文章之前发表在我的CSDN的博客中,现在贴到博客园来。。。 由于目前学习工作的不同,导致要用很多的语言进行工作和开发,因此经常弄混各个之间的差别。 今天有空,就将其做了出来,如下表,希望可以大家的工作和学习有所帮助! 如果有什么不严谨的地方,欢迎提出!
说明 | C(区分大小写) | Delphi(不区分大小写) | PHP(区分大小写) |
整型变量的定义 | 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位无符号*/ |
I: ShortInt; { 8位有符号}
I: Byte; { 8位无符号}
I: SmallInt; { 16位有符号}
I: Word; { 16位无符号}
I: Integer; { 32位有符号}
I: Cardinal; { 32位无符号}
I: Int64; { 64位有符号} |
$i = 10; /* 变量以$开头*/ |
实型变量的定义 |
float a = 1.0; /* 4字节*/
double a = 1.0; /* 8字节*/
long double a = 1.0; /* 10字节*/ |
a: Single; { 4字节}
b: Real48; { 6字节}
c: Double; { 8字节}
d: Extended; { 10字节} |
$a = 3.14; |
字符变量的定义 |
char a = 'a'; /*1字节*/ |
a: Char; { 1字节}
a: WideChar; { 2字节} |
$a = 'a'; |
固定长度字符串 |
无 |
a: ShortString; |
$a = 'a'; |
动态字符串 |
无 |
a: AnsiString;{ 一般为String} |
$a = 'Hello!'; |
以NULL结束的字符串 |
char a[] = "Hello!"; |
a: PChar; |
无 |
1字节布尔变量 |
任何1字节数 |
a: Boolean; |
任何变量都可以 |
加,减,乘,浮点除 |
+,-,*,/ |
+,-,*,/ |
+,-,*,/ |
整除 |
a = 3 / 2; /*运算符两边都是整型*/ |
a := a div b; { a,b都是整型} |
$a = 3 / 2; |
取模 |
a = a % b; |
a := a mod b; |
$a = $a % $b; |
赋值 |
a = b; |
a := b; |
$a = $b; |
比较 |
if (a == 12) ...; |
if a = 23 then ...; |
if ($a == 23) ...; |
不等于 |
if (a != 23) ...; |
if a <> 23 then ...; |
if ($a != 23) ...; |
小于,大于,小于等于,大于等于 |
<,>,<=,>= |
<,>,<=,>= |
<,>,<=,>= |
逻辑与 |
if (a && b) ...; |
if (a = 2) and (b = 3) then ...; |
if ($a && $b) ...; |
逻辑或 |
if (a || b) ...; |
if (a = 2) or (b = 2) then ...; |
if ($a || $b) ...; |
逻辑非 |
if (!a) ...; |
if not (a = 2) then ...; |
if (!$a) ...; |
数组定义 |
int a[10] = {0}; |
a: array[0..10] of Integer; |
$MyArray = array(1,2,3,4); |
记录类型 |
typedef struct{
int i;
double d;
}MyRes; |
Type
MyRec = record
i: Integer;
d: Double;
end; |
|
指针 |
int *a; |
a: ^Integer; |
|
判断语句 |
if (a == 2)
{
/* 为真执行*/
}else{
/* 为假执行*/
}; |
if a = 2 then
begin
{ 为真执行}
end else begin
{ 为假执行}
end; |
if ($a == 2)
{
/* 为真执行*/
}else{
/* 为假执行*/
}; |
多重判断 |
switch (expr){
case expr1:
DoSomething;
break;
case expr2:
DoSomething;
Break;
case expr3:
DoSomething;
Break;
default: exprN;
} |
case Variable of
101: DoSomething;
102:
begin
end;
103: DoAnotherthing;
else DoTheDefault;
end; |
switch (expr){
case expr1:
DoSomething;
break;
case expr2:
default: exprN;
} |
for循环 |
for(expr1;expr2;expr3){
DoSomething;
} |
for i := 10 to 20 do
begin
end;
for i := 20 downto 10 do
begin
end; |
for(expr1;expr2;expr3){
DoSomething;
} |
while循环(先判断) |
while(expr1)
{
} |
while(a = 30) do
begin
end; |
while(expr1)
{
} |
while循环(后判断) |
do
{
}while(expr1); |
repeat
inc(c);
until c > 100; |
do
{
}while(expr1); |
跳出循环 |
break; /* 跳出循环*/
continue; /* 跳出本次进入下一循环*/ |
break; /* 跳出循环*/
continue; /* 跳出本次进入下一循环*/ |
break; /* 跳出循环*/
continue; /* 跳出本次进入下一循环*/ |
|
请发表评论