第二章
命名规则
microsoft的“匈牙利”法。
windows应用程序:大小写混排方式。
unix应用程序才有小写下划线
常量用全大写字母,用下划线分割单词。
静态变量加前缀s_
全局变量加前缀g_
类的数据成员加前缀m_
表达式与基本语句
运算符优先级
复合表达式:书写简单、提高编译效率
浮点变量与零值比较
无论是float还是double类型的变量,都有精度限制。所以一定
要避免使用==或!=与数字比较,应该设法转化成<=或>=形式。
指针变量与NULL比较
指针变量使用NUL比较,虽然NULL与0是一样的表示
为了防止把NULL赋值给指针变量,一般写成if(NULL == P)
循环语句的效率:
在循环语句中,使用频率依次是for/while/do while
提高循环体的基本办法是降低循环体的复杂性。
基本方法:外层循环短,内层循环长,效率高。
有了if语句为什么还要switch语句:if只是实现二重分支。
goto语句:于goto 语句可以灵活跳转,如果不加限制,它的确会破坏结
构化设计风格。其次,goto 语句经常带来错误或隐患。它可能跳过了某些对象的构
造、变量的初始化、重要的计算等语句。但是goto语句有它的优势。主张少用、慎
用goto 语句,而不是禁用。
第三章 常量
表示方式:1.#define 2.const
3.1 const 与 #define 的比较
const比#define以下优势:
1.const 常量有数据类型,而宏常量没有数据类型,编译器可以
进行安全检查。
2.可以调试const,但是不可以调试宏常量。宏常量只是预编译
替换。
规则:使用const 常量而不使用宏常量,即const 常量完
全取代宏常量。
常量定义规则:
1.需要对外公开的常量放在头文件中,不需要对外公开的常量放在定义文件的头部。
microsoft的“匈牙利”法。
windows应用程序:大小写混排方式。
unix应用程序才有小写下划线
常量用全大写字母,用下划线分割单词。
静态变量加前缀s_
全局变量加前缀g_
类的数据成员加前缀m_
表达式与基本语句
运算符优先级
复合表达式:书写简单、提高编译效率
浮点变量与零值比较
无论是float还是double类型的变量,都有精度限制。所以一定
要避免使用==或!=与数字比较,应该设法转化成<=或>=形式。
指针变量与NULL比较
指针变量使用NUL比较,虽然NULL与0是一样的表示
为了防止把NULL赋值给指针变量,一般写成if(NULL == P)
循环语句的效率:
在循环语句中,使用频率依次是for/while/do while
提高循环体的基本办法是降低循环体的复杂性。
基本方法:外层循环短,内层循环长,效率高。
有了if语句为什么还要switch语句:if只是实现二重分支。
goto语句:于goto 语句可以灵活跳转,如果不加限制,它的确会破坏结
构化设计风格。其次,goto 语句经常带来错误或隐患。它可能跳过了某些对象的构
造、变量的初始化、重要的计算等语句。但是goto语句有它的优势。主张少用、慎
用goto 语句,而不是禁用。
第三章 常量
表示方式:1.#define 2.const
3.1 const 与 #define 的比较
const比#define以下优势:
1.const 常量有数据类型,而宏常量没有数据类型,编译器可以
进行安全检查。
2.可以调试const,但是不可以调试宏常量。宏常量只是预编译
替换。
规则:使用const 常量而不使用宏常量,即const 常量完
全取代宏常量。
常量定义规则:
1.需要对外公开的常量放在头文件中,不需要对外公开的常量放在定义文件的头部。