zoukankan      html  css  js  c++  java
  • C语言头文件引用

    1,引用分为两种

    firs:include<fileName.h> 引用系统头文件一般用<>。

    second:include"fileName.h" 引用自己定义的头文件一般用" "。

    区别是<>首先去系统中去找," "则在自己当前文件夹找。

    2,只引用一次头文件

    如果一个头文件被引用两次,编译器会处理两次头文件的内容,这将产生错误。为了防止这种情况,标准的做法是把文件的整个内容放在条件编译语句中,如下:

    _test.c 

    #include"_preprocess.h"
    int main(){
        testPreprocess();
    }

    _preprocess.h

    #ifndef PREPROCESS
    #define PREPROCESS 
    #include<stdio.h>
    #include<stdlib.h>
    void testPreprocess();
    #endif

    _preprocess.c

    #include"_preprocess.h"
    void testPreprocess(){
        printf("Test preprocess");
    }

    命令 gcc _test.c _preprocess.c生成 .exe运行就可以了

    3,有条件引用

    有时需要从多个不同的头文件中选择一个引用到程序中。例如,需要指定在不同的操作系统上使用的配置参数。您可以通过一系列条件来实现这点,如下:

    #if SYSTEM_1
       # include "system_1.h"
    #elif SYSTEM_2
       # include "system_2.h"
    #elif SYSTEM_3
       ...
    #endif

    但是如果头文件比较多的时候,这么做是很不妥当的,预处理器使用宏来定义头文件的名称。这就是所谓的有条件引用。它不是用头文件的名称作为 #include 的直接参数,您只需要使用宏名称代替即可:

     #define SYSTEM_H "system_1.h"
     ...
     #include SYSTEM_H

    SYSTEM_H 会扩展,预处理器会查找 system_1.h,就像 #include 最初编写的那样。SYSTEM_H 可通过 -D 选项被您的 Makefile 定义。

  • 相关阅读:
    JS事件委托学习(转)
    js 监听监键盘动作(转)
    JS操作JSON总结
    靶机练习-VulnHub-Toopo
    Web安全测试学习笔记
    Web安全测试学习笔记
    PentesterLab练习
    CTF-攻防世界-supersqli(sql注入)
    工具学习
    漏洞复现-ElasticSearch 命令执行漏洞(CVE-2014-3120)
  • 原文地址:https://www.cnblogs.com/blueberry006/p/7830883.html
Copyright © 2011-2022 走看看