gpt4 book ai didi

c - 外部函数原型(prototype)?

转载 作者:太空狗 更新时间:2023-10-29 17:08:43 27 4
gpt4 key购买 nike

我的数学.h

// case 1 
unsigned int add_two_numbers(unsigned char a, unsigned char b);

//case 2
extern unsigned int add_two_numbers(unsigned char a, unsigned char b);

情况一和情况二有什么区别?我从未将 extern 用于函数原型(prototype),但查看某人的代码(比我更有经验的人)我发现 extern 总是在声明函数原型(prototype)时使用。任何人都可以指出请指出区别吗? (或指向我可以找到特定信息的链接)。谷歌说这与外部链接有关。谁能给我举一个例子,其中一个行得通而另一个行不通?

我正在使用嵌入式 C (KEIL),如果它有什么不同的话。

最佳答案

extern 是全局链接的链接说明符。它的对应项是 static,它指定文件本地链接。由于全局链接是 C 中的默认设置,在声明中添加 extern 对函数声明没有影响。对于变量,它会阻止自动内存分配,使用它是只是在全局范围内声明变量的唯一方法。

如果你只是谷歌关键字,你会发现很多文章,例如这个: geeks for geeks

关于c - 外部函数原型(prototype)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27447285/

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