gpt4 book ai didi

c++ - 链接时不包含宏定义

转载 作者:太空宇宙 更新时间:2023-11-04 02:00:23 25 4
gpt4 key购买 nike

我在我的 .c 文件中使用以下代码,然后我正在为其创建库文件。

#define abc void printa()\ 
{\
printf("a");\
}

在其他一些文件中,我使用了 abc 函数。但是当我链接这两个文件时,它没有打印。

如果我在宏定义中使用某些东西,它不会包含在库文件(.a 文件)中。

最佳答案

宏定义abc

#define abc void printa()\ 
{\
printf("a");\
}

无法从链接器中看到。 CPP 预处理器只是用

替换任何出现的 abc
void printa() 
{
printf("a");
}

如果你想让函数对链接器可见,给它们一个声明和定义,比如

void abc() {
printf("a");
}

关于c++ - 链接时不包含宏定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27930500/

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