您的位置:首页 > 编程语言 > C语言/C++

C语言tips不完全汇总

2016-01-08 12:36 295 查看
以下内容是在学校学习C语言期间回答同学的疑问而总结的一些tips,因本人水平有限,如有错误还请各位指教。

1、

for(int i=0,i<strlen(s);i++)


这段循环中每次判断循环条件是否满足时都要调用一次strlen函数,但本身strlen(s)的值是不变的,所以可以单独用一个变量来装它,节省时间。

如:

int temp=strlen(s);
for(i=0;i<temp;i++)


2、

fread与fwrite连续使用时必须在之间用一个fseek,否则其中一个无效,貌似用fflush也行,但是没试过。

3、

’a’直接表示字符a,“a”表示一个地址,地址指向一个字符串a。

4、

char s[20];
s="hello"


错误,必须用strcpy函数。因为s代表是的字符数组s的首地址,而s="helo" 相当于改变数组的首地址为字符串“hello”的地址,这是不被允许的。

5、

for(double i=0;i!=10;i+=0.1)
该循环其实是一个死循环,原因是因为浮点数是不准确的,不能准确地表达0.1这个数字,这个现象也叫浮点数陷阱。

关于浮点数的一些知识:

http://bbs.chinaunix.net/thread-3746530-1-1.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c语言