在C预言中,#的含义是预处理命令,在这里的作用是文件包含,即该程序在预编译时要包含stdio.h头文件。
#不能去掉,去掉后无法识别是预处理命令,编译会出错。
在C语言中,预处理命令主要包含三方面的内容,分别是:1)宏定义;2)文件包含;3)条件编译。
这三个都以#标识符作为开头。
下面分别介绍。
预处理命令之一:宏定义宏定义又叫宏替换,宏代换,简称宏。
宏定义的主要作用是提高代码的观赏性,并能在一定程度上提高程序的运行效率。
在编程时,可能会反复用到一些常量,为了不用每次都把这个常量写一遍,可以使用宏定义。
如下所示:上图中定义了两个宏定义,其含义时,在程序中遇到PI时就用3.1415926去代替。
预处理命令之二:文件包含在C语言中,文件包含是指一个源文件可以将另一个源文件的全部内容包含进来。
其作用是在预编译时,将指定源文件的内容复制到当前文件中。
对于文件的包含大家最熟悉的就是:#include <stdio.h>。
在编译文件时,首先进行预编译,将头文件sthio中的内容引用过来,在当前文件中直接调用。
有两种写法:1.第一种: #include<文件名>在C语言库函数头文件所在的目录中寻找文件。
2.第二种:#include "文件名"先去源程序所在文件夹下去寻找,如果找不到,再到 *** 作系统的path路径查找,最后才到C语言函数头文件所在的目录中寻找文件。
预处理命令之三:条件编译所谓条件编译,就是在编译时对满足条件的进行编译,不满足条件的不编译,最常用的就是在头文件编译中,为了防止头文件重复调用。
条件编译常用的符号有:#define、#undef、#ifdef、#ifndef、#if、#elif、#else、#endif等。
上图中条件编译的作用就是防止头文件被重复调用。
由上可见,预处理命令都是以#作为开头的,所以#不能去掉,否则编译会出错。
以上就是这个问题的回答,感谢留言、评论、转发。
更多精彩内容请关注本头条号:玩转嵌入式。
感谢大家。
stdio.h就是指“standard input&output"说的是标准输入输出头文件!用到标准输入输出函数时,就要调用这个头文件。
如果不需要标准输入输出就不必包含这个头文件。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)