C语言 预处理一(文件包含--#include)

//预处理命令不需要在结束末尾加";"
//#inlude可以包含任意类型的文件

//#inlude 将一个源文件的全部内容包含到另一个源文件中,成为它的一个部分,文件包含的一般格式为:
//#include <文件名> 或者 #include “文件名”
//两种形式的区别在于:使用尖括号表示在系统头文件目录中查找(由用户在设置编程环境时设置),而不在源文件目录中查找。
//使用双引号则表示首先在当前的源文件目录中查找,找不到再到系统头文件目录中查找。
#include<stdio.h>//在系统头文件目录中查找stdio.h
//.h头文件一般存放函数声明,变量的声明
#include<stdlib.h>
#include"1.h"

//#include调用文件的两种方式
//方式一:如果调用的文件在项目下面,可以#include"1.h"直接调用
//方式二:还可以通过绝对路径或者相对路径调用文件
//例子1(绝对路径包含)
#include"E:\\Look\\run.c"
//例子2(相对路径包含)
#include"../run1.c"                 //   "../"表示当前源代码的上一级目录
#include"./run2.c"                 //   "./"表示当前源代码的目录
#include"./trd/run3.c"            //   "./trd/"表示当前源代码的trd文件下的run3.c文件
#include"/run4.c"                //   "/"表示当前源代码的trd文件下的run3.c文件




//#include一行只能包含一个文件,多个文件必须分开写
//#include"../run1.c" "/run4.c"//这样的写法错误

//#include包含嵌套,可以文件A包含文件B,文件B又包含文件C

//全局变量的特殊声明与定义
int a;//这里int a;是全局变量a的声明,并不是a的定义
int a;//这里的a,因为后面紧接着a的赋值,所以这里是定义
a = 10;




void main(){
    //#inlude可以包含任意类型的文件
    #include"2.txt"
    //已经使用#include"1.h"包含了go()函数的声明
    go();
    //已经使用#include"E:\\Look\\run.c"包含了该函数
    run();

    run1();
    run2();
    run3();
    run4();

    //注意:这里test2()这个函数就不能通过#include"tec02.c"包含进来,
    //因为同一项目下的源文件不可以有重名的函数或者重名的全局变量
    //如果再通过#include"tec02.c"包含,test2()函数就会被重定义
    //因此,在同一个项目下面,最好是包含.h的头文件(.h一般放函数声明,所以没有影响),不要包含.c
    test2();
    system("pause");
}

 

C语言 预处理一(文件包含--#include)_第1张图片

你可能感兴趣的:(C语言 预处理一(文件包含--#include))