gpt4 book ai didi

c++ - 第三方库中的不同数据类型长度

转载 作者:搜寻专家 更新时间:2023-10-31 00:56:48 24 4
gpt4 key购买 nike

C 和 C++ 标准都没有指定某些数据类型的确切长度,只指定了它们的最小长度。

我有一个第三方库:someLib.lib(为我的平台编译)及其对应的someLib.h。假设它包含以下功能:

int getNumber();
void setNumber(int number);

当我编译一个使用这个库的程序时,编译器会使用 someLib.h 中定义的签名检查类型,所以只要我使用 int,一切都应该编译正常。

但是当我的编译器中的 int 比用于编译 someLib.lib 的编译器中的长或短时会发生什么?在链接过程中会被检测到吗?它会导致运行时错误吗?我可以在不知道它是如何编译的情况下安全地使用 someLib.lib 吗?

最佳答案

你不应该得到编译器或链接器错误,只会在运行时出现未定义的行为。可能会崩溃,或者如果你幸运的话只是奇怪的结果。

关于c++ - 第三方库中的不同数据类型长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38698038/

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