1.在使用变量时应该遵循一下良好的编程习惯。
<1>定义有意义的变量名,有助于程序自成文档,可以减少注释。
<2>用作变量名的标识符,第一个字母应该小写。大写字母开头和字母全部大写的标识符有专门的含义。
<3>变量名使用多个单词可使程序具有更好的可读性,这种情况下,需要将第一个单词外的每个单词首字母大写或在每个单词之间加入下划线_以区分不同的单词。
2.只有内建数据类型和函数对象类型适用于传值调用。对于其他类型,建议使用引用常量传参,而不是传值。因为引用常量参数的方式更高效,而且可以避免“截断问题”
3.定义的静态存储变量无论是全局的还是局部的,该变量定义和初始化都是在程序编译时进行的。在实际应用中,如果没有为静态变量赋初值,某些编译器进行编译时,可能会出
错,为了安全起见,应该在声明变量时进行初始化。
4.并非所有的递归数学公式都可以转为递归程序。在递归结构进行大型程序设计时,需要考虑到可理解性和效率之间的关系。
5.任何递归程序都可以通过控制系统堆栈转为非递归程序。
6.仅当程序大部分函数都使用某个变量时,才应将其变量声明为全局变量。如果只有一些函数,则应将该变量作为参数传递给这些函数,并不将他们声明为全局变量。
7.内部函数(staic)在一些情况下具有非常重要的作用。例如使用内部函数可以防止在其他文件代码中由于误操作调用该函数而破坏其数据。
8.用户编写登录程序时使用getch()函数,在输入用户名密码时不显示输入信息。
9.使用putchar和putch函数输出字符,当输出超过窗口的右边界时会自动转到下一行的开始继续输出。当窗口内填满内容仍然没有结束输出时,窗口屏幕会自动逐行上移直到输
出结束为止。
10.用户使用完文件之后关闭文件,如果程序在结束后没有显示地关闭文件,有可能会丢失数据。如果文件不是正常关闭,缓冲区的内容可能没有写在磁盘上。
11.在文本模式下最好少用fseek函数,因为已存在库函数的转义,在文本模式下“\r\n”还是被fseek函数当作两个字符。
12.c语言的高级文件处理能被大多数程序员理解,因此如果用户使用的是fopen(),fgetc()等此类高级函数,将会帮助程序员更好的理解代码。
13.文件句柄可以是任何有效的标识符,由大小写字母、数字、下划线字符组成。文件句柄没有标志性的前缀,因此为了使得文件句柄有所区别,程序员经常以
全部大写字母表示。
14.使用rename()函数时需要注意一下两点。
<1>在重命名打开文件之前,必须先关闭该文件
<2>当使用rename函数将某个文件从不受保护的位置复制到受保护的位置时,该文件仍保持较低的限制权限,即该文件不受保护。
15.同上,使用remove()函数时必须先关闭它。
原文地址:http://blog.csdn.net/wangxiaobupt/article/details/25076355