1.sprintf与print函数
sprintf的作用是将一个格式化的字符串输出到一个目的字符串中,而printf是将一个格式化的字符串输出到屏幕。
sprintf的第一个参数是目的字符串,如果不指定这个参数,执行过程中出现 "该程序产生非法操作,即将被关闭...."的
提示。
2.#define函数 (宏定义)
#define MAXTIME 1000
一个简单的MAXTIME就定义好了,它代表1000;
另一个就是“未加括号导致的边界效应”,即在宏定义的时候,其各个分量未加括号,而在使用宏定义的时候,传递的参数是变量的表达式,然后经过系统展开后,由于优先级的原因,导致其结果不是你所希望的。
例如: #define MUL(A,B) A*B ,在调用的时候,
int a=1,b=2,c=3,d=0;
d=MUL(a+b,c)
经过编译时候展开,就变成了
d=a+b*c
而不是我们所希望的
d=(a+b)*c
正确的定义方法:#define MUL(A,B) ((A)*(B))
3.for循环中i++与++i的区别
i++ :先引用后增加;
++i :先增加后引用;
在for循环中,以 for(i = 0;i < 10;i++)为例,执行过程分为三个部分,首先给i赋初值;然后判断i的大小是否满足i < 10,如果满足要求,则执行for循环中print等语句;执行完成后再执行(i++或者++i),然后回到for循环起始部分再次判断i的大小是否满足i < 10,直到i = 10,退出for循环语句。