发布时间:2014-10-10 08:46:16
enum自定义常量,枚举型常量(离散值int型)enum与#define的区别:#define宏常量只是简单的进行值替换,枚举常量是真正意义上的常量;#define 宏常量无法被调试枚举常量可以;#define宏常量无类型信息,枚举常量是一种特定类型的常量。typedef 用于给一个已经存在的数据类型重命名,并没有产生新.........【阅读全文】
发布时间:2014-10-10 08:31:11
空结构体占多大内存?空结构体在gcc编译下占内存0,在g++编译下占内存1,没有谁对谁错。柔性数组?数组大小待定的数组。结构体最后一个元素可以是柔性数组。struct中的每个域在内存中都独立分配空间union只分配最大域的空间,所有域共享这个空间。Union的使用受系统大小端影.........【阅读全文】
发布时间:2014-10-08 18:12:42
volatile可理解为编译器警告指示字;用于告诉编译器必须每次去内存中取变量;主要修饰可能被多个线程访问的变量;也可修饰可能被未知因数更改的变量。所以要在对应的变量前加volatile,预防编译器的自作聪明,影响我们要它硬件中断出来的obj。.........【阅读全文】
发布时间:2014-10-08 17:54:11
const在c语言修饰的变量是只读的,其本质还是变量,其修饰的变量会在内存占用空间,本质上只对编译器有用在运行时无用。利用指针就可对const修饰的变量进行修改,const并不是真的常量。const修饰的数组是只读的,const修饰的数组空间不可被改变(如上)。const出现在*号左边时指针指向的数据为常量,当const出现在*.........【阅读全文】