c陷进与缺陷(3)

来源:互联网 发布:淘宝个人头像怎么换 编辑:程序博客网 时间:2024/04/27 21:30

     2011-11-15 

    c语言中只有 &&  ||    ?:  , 四个运算符存在规定求值顺序!其它的都是未定义的,特别的赋值运算符不保证任何求值顺序。

     检查 a+b是否溢出      if ( a > INT_MAX - b)

... ;//处理

同名全局变量只能定义一次,否则与系统实现有关!声明的类型一定要跟定义一样!全局变量很容易出错。  

static 限制作用域在一个源文件内,对其它源文件不可见

库函数

int main()
{
char c;
while( ( c = getchar()) != EOF) //问题代码
putchar(c);
return 0;
}

getchar()函数一般返回标准输入文件的下一个字符,当没有输入时返回EOF。但getchar返回的是int型,而c是char型,所以可能会出现bug。

FILE *fp;

fp = fopen(file ,"r+"); // r+ 表示对文件进行输入和输出操作

但为了保持与过去不能对文件同时读写程序的兼容性,一个输入操作后不能直接跟着一个写操作。

反之亦然,必须在其中插入fseek函数的调用。



原创粉丝点击