当前位置: 首页 > article >正文

86.#include预处理命令(1)

目录

一.#include预处理命令

二.扩展

三.视频教程


一.#include预处理命令

#include 也是C语言预处理命令的一种。也叫做文件包含命令,用来引入对应的头文件(.h文件)。

如何使用?

举例:

在任意文件夹下创建一个main.c,并写入以下代码。

#include <stdio.h>

#include "myhead.h"

int main(void)

{

    int a;

    a = func();

    printf("a = %d\n",a);

    return 0;

}

这里为什么使用的是””而不是<>

当在#include指令中使用<>时,编译器会到系统指定的标准头文件路径中去查找头文件。一般用于包含标准库的头文件,例如<stdio.h>。

当使用""时,编译器首先会在包含当前源文件的目录下查找头文件。如果在当前目录下没有找到,才会到系统指定的标准头文件路径中去查找。这种方式通常用于包含用户自定义的头文件,比如自己编写的.h文件,例如"myhead.h"。

然后在main.c同级目录下创建一个myhead.h文件,并写入以下代码:

int func();

然后在创建一个myhead.c,并写入以下代码:

#include "myhead.h"

int func(void)

{

    return 123;

}

编译此代码,编译命令:gcc main.c myhead.c -o app

运行:

二.扩展

#include预处理命令我们就看完了,我们改一下这个例子:

1.删掉myhead.c

2.修改main.c,代码如下

#include <stdio.h>

#include "myhead.h"

#include "myhead.h"

int main(void)

{

    int a;

    a = func();

    printf("a = %d\n",a);



    return 0;

}

3.修改myhead.h,代码如下

int func(void)

{

    return 123;

}

重新编译代码会提示重复定义的错误,如下:

思考:这个问题要怎么解决和避免呢?

三.视频教程

86.#include预处理命令_哔哩哔哩_bilibili


http://www.kler.cn/news/355678.html

相关文章:

  • 【最新华为OD机试E卷-支持在线评测】VLAN资源池(100分)多语言题解-(Python/C/JavaScript/Java/Cpp)
  • C# 实操高并发分布式缓存解决方案
  • Git中Update和Pull的区别
  • H.264 编码参数优化策略
  • 时序数据库 TDengine 支持集成开源的物联网平台 ThingsBoard
  • 计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-10-17
  • 【计算机网络 - 基础问题】每日 3 题(四十八)
  • 简单说说 spring是如何实现AOP的(源码分析)
  • try increasing the minimum deployment target IOS
  • Trimble三维激光扫描开启工业元宇宙的安全“智造”之路-沪敖3D
  • 【PyTorch][chapter30][transformer-3]
  • Apache SeaTunnel 介绍
  • 用 Git Stash 临时保存修改,轻松切换任务!
  • 安科瑞智慧能源管理系统EMS3.0在浙江某能源集团有限公司的应用
  • Web3与传统互联网的区别
  • mqtt单次订阅多个主题
  • LeetCode146. LRU 缓存(2024秋季每日一题 37)
  • Centos7 安装升级最新版Redis7.4.1
  • 《太原理工大学学报》
  • JavaGuide(9)