gpt4 book ai didi

c - #define(预处理器指令)是否从头文件继承

转载 作者:行者123 更新时间:2023-11-30 21:02:53 25 4
gpt4 key购买 nike

如果我在头文件中有一些#define,它可以在包含该头文件的源代码中使用吗?[类似#define Bytef unsigned int]

最佳答案

是的,你可以做到。

包含的工作原理如下:

假设您有一个文件。

header.h

内容:

 void HappyMakerPrototype();
void AnotherPrototype();

和源文件

src.c

内容:

void dummydec();
#include "header.h"

void main ()
{
return;
}

在编译的第一步中,它将运行预处理。

这里的包含行只是被包含文件的所有内容替换。

因此,如果您请求预处理文件的输出,它将如下所示:

(在 gcc 和 clang 编译器中,您可以使用参数 -E 请求预处理文件,我想这会帮助您理解)

void dummydec();
void HappyMakerPrototype();
void AnotherPrototype();

void main ()
{
return;
}

关于c - #define(预处理器指令)是否从头文件继承,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27562750/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com