C语言重点知识,面试必备!!
来源:互联网 发布:化妆品网络营销策划 编辑:程序博客网 时间:2024/06/05 06:01
1、宏定义:也就是常用来做定值用的:
#define SQR(x){X*X};
宏定义的函数不同与其他的函数:
例如上面的函数,实际是这样的
SQR(b+a);
运算的顺序是:b+2*b+2 并不是想象中的(b+2)*(b+2);
******记住********
#define SQR(x)x*x
int main(int argc, char* argv[])
{
int a = 3;
int c = 4;
int b;
b = SQR(a+c);
printf("%d\n",b);
return 0;
}
2、预处理命令#define(不能以分号结束)
在这个例子中要表示一个16位的整数;用UL表达比较合适;
例如,求一年中有多少秒;
#define UL 60*60*24*365
3、标识#define宏,在宏中要小心的把参数用括号括起来;
#define MIN(a,b){(a)<=(b)?(a):(b)}
4、const的作用,
定义常量,修饰函数的参数,修饰函数的返回值三个用处
5、const和#define相比前者有更多的优点,
(1)、const 有数据类型,而#define宏常量没有,
(2)、编译器可以对前者进行类型的安全监察,而后者只能是字符替换;
(3)、const可以进行调试,但是宏却不能,在C++中只用const,
#define SQR(x){X*X};
宏定义的函数不同与其他的函数:
例如上面的函数,实际是这样的
SQR(b+a);
运算的顺序是:b+2*b+2 并不是想象中的(b+2)*(b+2);
******记住********
#define SQR(x)x*x
int main(int argc, char* argv[])
{
int a = 3;
int c = 4;
int b;
b = SQR(a+c);
printf("%d\n",b);
return 0;
}
2、预处理命令#define(不能以分号结束)
在这个例子中要表示一个16位的整数;用UL表达比较合适;
例如,求一年中有多少秒;
#define UL 60*60*24*365
3、标识#define宏,在宏中要小心的把参数用括号括起来;
#define MIN(a,b){(a)<=(b)?(a):(b)}
4、const的作用,
定义常量,修饰函数的参数,修饰函数的返回值三个用处
5、const和#define相比前者有更多的优点,
(1)、const 有数据类型,而#define宏常量没有,
(2)、编译器可以对前者进行类型的安全监察,而后者只能是字符替换;
(3)、const可以进行调试,但是宏却不能,在C++中只用const,
- C语言重点知识,面试必备!!
- C 语言重点知识
- C语言重点知识小结
- C语言重点知识复习1
- C语言重点知识复习2
- c语言面试知识总结
- C语言编程必备知识之一------------------汉字编码
- 【C语言常识】volatile必备知识
- C语言终极面试宝典_C语言面试必备
- 面试必备-操作系统知识
- 前端面试知识必备
- 面试笔试---数据库重点知识
- JAVA 面试重点知识总结
- C/C++面试重点
- JavaWeb方向面试必备知识
- android面试---JVM必备知识
- c++面试笔试必备知识
- C语言重点
- GNU GDB Debugger Command Cheat Sheet
- VMWare 7 安装Mac OS X声卡驱动
- 一:Linux系统的升级
- ARM GCC让我纠结的换行符
- 禅道程序员的10条原则
- C语言重点知识,面试必备!!
- Windows下的Objective-C集成开发环境(IDE)
- Fckeditor漏洞总结
- 【windows8开发】开发平台与开发框架
- C语言面试题 unsigned int ,i?i, ab 交换
- ORA-12154: TNS: 无法解析指定的连接标识符
- 多态
- 在eclipse3.7中配置hadoop1.0.1插件
- Oracle 密码文件