• C、Delphi和PHP的基本语法对照表


    这篇文章之前发表在我的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; /* 跳出本次进入下一循环*/
  • 相关阅读:
    gRPC详解
    vue 实现无限向上滚动
    vue 封装highcharts组件
    《数据结构与算法之美》32——分治算法
    《数据结构与算法之美》31——贪心算法
    《数据结构与算法之美》30——回溯算法
    《数据结构与算法之美》29——动态规划实战
    《数据结构与算法之美》28——动态规划理论
    《数据结构与算法之美》27——初识动态规划
    《数据结构与算法之美》26——广度优先搜索与深度优先搜索
  • 原文地址:https://www.cnblogs.com/pchmonster/p/2285811.html
Copyright © 2020-2023  润新知