c语言程序从代码到可执行的程序,中间要经过几个阶段
- 对代码格式进行整理
- 预处理命令对源代码代码进行处理
- 编译源代码
- 链接
大部分的过程都会由编译器自动完成,这里我们只介绍和我们写代码有关的部分,就是预处理
预处理顾名思义,就是在编译之前,对代码进行的处理
我们经常使用的预处理指令大概可以分成三类
1 包含文件
在我们之前写的代码当中,第一句话就是 #include ...,这就是一个典型的预处理命令,作用就是 在编译代码之前,把另外一个源文件当中的内容引入到当前的c文件中
#include
这里我们就是把 stdio.h 这个头文件引入到了我们的程序当中,在stdio.h这个头文件内,提供了一系列的函数,我们使用的printf和scanf都在其中
文件输入/输出 - cppreference.comzh.cppreference.com#include 一般会有两种用法
#include<文件名>
#include"文件名"
具体的区别就是:
- 使用<文件名>这种形式,会在c语言的标准库当中去搜索文件
- 而使用"文件名"这种形式,会在程序所在的位置搜索文件,如果找不到,再到标准库去搜索文件
比如说我们把程序改写成
#include
也是可以执行的,只不过预处理器会先在我们这个程序所在的文件夹先搜索有没有stdio.h这个文件,如果没有再去标准库里引入stdio.h
![f356fb9595207ca62fed94d110316925.png](https://i-blog.csdnimg.cn/blog_migrate/ea717fcd58f4babc40f164f94808b0ce.png)
我们写的程序有的时候并不是只有一个源代码,很有可能由多个文件构成一个c语言的项目
一般的IDE都会有项目管理的功能
![160f4844603adbaf081b5a29b7457536.png](https://i-blog.csdnimg.cn/blog_migrate/f3386da03219fd6fbcb6ba044bdfe0e8.jpeg)
可以建立一个空项目
![ba2e4a4d3bf8f6d8e5968bd05a3b8490.png](https://i-blog.csdnimg.cn/blog_migrate/41fd6e292120e728e5b870719331715f.jpeg)
选择项目的保存位置
![5ee384336682b3e0761514a040354f5c.png](https://i-blog.csdnimg.cn/blog_migrate/f54c4c2db8aa2f65e7b8a5ee6e884274.jpeg)
![9b8e84009e2d3af6160be13a403b1479.png](https://i-blog.csdnimg.cn/blog_migrate/971beeaff8569d8cbd7b064163c503f3.jpeg)
不同的IDE以上的步骤会有所区别,但是最终的目的都是一样的