凡客 网站设计,wordpress 婴儿,施工企业合规风险识别与管理,wordpress 代码模块我觉得语言之所以能称之为语言#xff0c;它肯定是一种工具一种相互交流相互通信相互传达之间的意图的工具#xff0c;作为语言那肯定得有自己的语法#xff0c;要想相互交流肯定得先学好它的语法吧(比如像表达式#xff0c;函数#xff0c;循环#xff0c;指针)我称之为… 我觉得语言之所以能称之为语言它肯定是一种工具一种相互交流相互通信相互传达之间的意图的工具作为语言那肯定得有自己的语法要想相互交流肯定得先学好它的语法吧(比如像表达式函数循环指针)我称之为C语言的语法。C语言虽然很强大但是他也有不少陷阱所以我发这篇博客有两个目的一是把C语言一些误用易错的地方总结一下二是把C语言一些基本语法总结一下~第一次1.关于自增自减(即 i,i )要想给一个数加一或减一我们可以i 1;j - 1;而C语言还允许用 和--运算符其实这里有误导因为 和--可以作为前缀和后缀这样的话他们就有可能改变操作数的值下面让我们来看看i 1;printf(i is %d\n, i); /* prints i is 2 */printf(i is %d\n,i); /* prints i is 2 */计算表达式i 的结果是i,但是会引发i随后进行自增i 1;printf(i is %d\n,i ); /* prints i is 1/ */printf(i is %d\n,i); /* prints i is 2 */第一个printf 显示了i自增前的原始值第二个printf显示了i变化后的新值;当然 -- 类似我就不举例了~但在同一个表达式中多次使用 和--往往很难理解我们看看下面的例子i 1;j 2;k i j ;i,j,k最终值分别是2,3,4而 i是2 j 是2;总结不管是 i还是i 执行这条语句后i的值都加一了只是( i)的值加一了而(i )没变2.typedef与#define2.1.typedefC语言除了直接使用标准的类型名(如 int char float double)和自己声明的结构体、共用体、指针、枚举类型外还可以用typedef声明新的类型名来代替现有的类型名。typedef unsigned char u8;typedef unsigned int u16;u8 count;u16 time;typedef struct{u8 month;u8 day;u16 year;}DATE;DATE brithday;总结一下声明新的类型名的方法1.先按定义变量的方法写出定义体(如 unsigned int i)2.在变量名换成新的变量名(如将 i换成u16)3.在最前面加上typedef (typedef unsigned int u16)4.然后用新类型名去定义变量2.2 #define2.2.1不带参数的宏定义#define 标识符 字符串#define PI 3.1415926注意1.它的作用是在本程序中用指定的标识符PI来代替3.14159262.宏定义是用宏来代替字符串也就是做简单的置换不做正确性检查如果写成#define PI 3.l4l6926即把1写成了字母l但是预处理照常代入不做任何语法检查!!2.2.2带参数的宏定义#define 宏名(参数) 字符串#define S(a,b) a*barea S(a,b);#define MAX(x,y) (x)(y) ? (x)y)3.typedef和#define的区别一般来说typedef 因为它能正确处理指针类型typedef char *String1;#define String2 char *String1 s1,s2;String2 s3,s4;s1,s2,s3 被定义为了char* 但s4却被定义为了char型3. static 变量static变量大致分为三种用法1. 用于局部变量中,成为静态局部变量. 静态局部变量有两个用法,记忆功能和全局生存期.2. 用于全局变量,主要作用是限制此全局变量被其他的文件调用.3. 用于类中的成员.表示这个成员是属于这个类但是不属于类中任意特定对象声明本文于网络整理版权归原作者所有如来源信息有误或侵犯权益请联系我们删除或授权事宜。