C语言tips不完全汇总
2016-01-08 12:36
295 查看
以下内容是在学校学习C语言期间回答同学的疑问而总结的一些tips,因本人水平有限,如有错误还请各位指教。
1、
这段循环中每次判断循环条件是否满足时都要调用一次strlen函数,但本身strlen(s)的值是不变的,所以可以单独用一个变量来装它,节省时间。
如:
2、
fread与fwrite连续使用时必须在之间用一个fseek,否则其中一个无效,貌似用fflush也行,但是没试过。
3、
’a’直接表示字符a,“a”表示一个地址,地址指向一个字符串a。
4、
错误,必须用strcpy函数。因为s代表是的字符数组s的首地址,而s="helo" 相当于改变数组的首地址为字符串“hello”的地址,这是不被允许的。
5、
关于浮点数的一些知识:
http://bbs.chinaunix.net/thread-3746530-1-1.html
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 语言程序(二)
- 如何写好 C main 函数
- Lua和C语言的交互详解
- 关于C语言中参数的传值问题
- 简要对比C语言中三个用于退出进程的函数
- 深入C++中API的问题详解
- 基于C语言string函数的详解
- C语言中fchdir()函数和rewinddir()函数的使用详解
- C语言内存对齐实例详解
- C语言编程中统计输入的行数以及单词个数的方法
- C语言自动生成enum值和名字映射代码
- 使用C语言判断英文字符大小写的方法
- c语言实现的带通配符匹配算法
- C语言实现顺序表基本操作汇总
- C语言中计算正弦的相关函数总结
- 使用C语言详解霍夫曼树数据结构
- 探讨C语言的那些小秘密之断言
- C语言实现BMP转换JPG的方法
- 深入探讨C语言中局部变量与全局变量在内存中的存放位置
- C语言查找数组里数字重复次数的方法