
C语言
gwKismit
不要想太多,只要有一点灵感就赶紧行动吧,没有什么失败是不可承受的,没有什么成功是一触而就的!
展开
-
接续符和转义符
接续符‘\’是编译器的指示符指示这一行尚未结束,下一行接着上一行。#define \SW\AP(a,b) \{ \ int\ temp = a; \ a\ = b; \ b = te\mp; \}//这是\注释宏代码块定义:定义一个代码原创 2016-03-15 23:05:34 · 380 阅读 · 0 评论 -
sizeof const volatile
sizeof是编译器内置的关键字,不是函数,用于计算相应实体所占内存的大小,在编译期间就可以确定。sizeof a 等价于 sizeof(a)const修饰的变量是只读变量,告诉编译器不可以对该变量进行赋值操作,但在程序运行过程中还是可以改变的。const变量在内存中是占据空间的!const int cc =1;原创 2016-03-09 11:39:30 · 339 阅读 · 0 评论 -
enum define typedef
enum Color{ GREEN, //这里GREEN默认为0 RED = 2, BLUE //BLUE = 3 };enum取值只能是整数,不能是float默认值是0开始的#define 宏常量变量只是简单的替换,枚举变量是真正意义上的常量define定义的原创 2016-03-09 11:04:08 · 301 阅读 · 0 评论 -
bool if float
标准C语言中是没有标准的bool类型的,bool由编译器制定,所以不同的编译器true或false不一定一样bool类型的实际变量实际是枚举变量typedef enum{ true = 1 , false = 0}bool;条件只判断是0还是非0if(-1)也是成立原创 2016-03-09 11:09:39 · 480 阅读 · 0 评论 -
auto,static,register分析(属性关键字)
变量的修饰符auto是C语言的默认属性,是在程序栈分配空间的static定义静态变量,实在程序静态区分配空间,修饰函数时表示全局变量,只是在同一个文件中是全局的,在其他文件中并不是全局的。register定义的变量是存储在寄存器中的,变量必须是CPU寄存器可以接受的值,不一定能够分配,因为是寄存器变量不在内存中分配空间所以不能使用&运算符原创 2016-03-09 11:14:07 · 360 阅读 · 0 评论 -
goto void
goto破坏过程式程序设计的规则基本不用!void关键字:修饰返回值和参数为了表示“无”void并不是表示内存大小的别名,C语言中并没有void标准类型的void只是定义为表示“无”类型,并没有定义其表示空间的大小,其表示空间的大小是由编译器定义的gcc编译器中:sizeof(void) ==1原创 2016-03-09 11:17:46 · 383 阅读 · 0 评论 -
++ --运算符
(++i)+(++i)+(++i)错误结果:15正确的结果:编译器处理方式1:++i=4 ++i=5 ++i=66+6+6 = 18处理方式2:++i=4 ++i=55+5+(++i)=5+5+6 = 16 (gcc、g++编译器的结果)并没有标准结果,具体情况由编译器决定,这是C的灰色地带。int x;int原创 2016-04-11 22:20:24 · 375 阅读 · 0 评论