规则4 如果要用其它模块定义的变量和函数,直接包含其头文件即可。 许多程序员喜欢这样做,当他们要访问其它模块定义的变量时,他们在本模块文件开头添加这样的语句: extern int externVar; 抛弃这种做法吧,只要头文件按规则1完成,某模块要访问其它模块中定义的全局变量时,只要包含该模块的头文件即可。 (4)“数组名就是指针” 许多程序员对数组名和指针的区别不甚明了,他们认为数组名就是指针,而实际上数组名和指针有很大区别,在使用时要进行正确区分,其区分规则如下: 规则1 数组名指代一种数据结构,这种数据结构就是数组; 例如: char str[10]; 输出结果为: 10 4 这说明数组名str指代数据结构char[10]。 规则2 数组名可以转换为指向其指代实体的指针,而且是一个指针常量,不能作自增、自减等操作,不能被修改; char str[10]; 规则3 指向数组的指针则是另外一种变量类型(在WIN32平台下,长度为4),仅仅意味着数组的存放地址; 规则4 数组名作为函数形参时,在函数体内,其失去了本身的内涵,仅仅只是一个指针;很遗憾,在失去其内涵的同时,它还失去了其常量特性,可以作自增、自减等操作,可以被修改。 例如: void arrayTest(char str[]) (5)“整形变量为32位” 整形变量是不是32位这个问题不仅与具体的CPU架构有关,而且与编译器有关。在嵌入式系统的编程中,一般整数的位数等于CPU字长,常用的嵌入式CPU芯片的字长为8、16、32,因而整形变量的长度可能是8、16、32。在未来64位平台下,整形变量的长度可达到64位。 长整形变量的长度一般为CPU字长的2倍。 在数据结构的设计中,优秀的程序员并不会这样定义数据结构(假设为WIN32平台): typedef struct tagTypeExample |
正在阅读:C/C++编程新手错误语录C/C++编程新手错误语录
2005-08-25 10:02
出处:PConline
责任编辑:moningfeng
键盘也能翻页,试试“← →”键