gpt4 book ai didi

c - typedef 在 C 中存储指针

转载 作者:太空狗 更新时间:2023-10-29 14:52:10 26 4
gpt4 key购买 nike

指针的大小取决于机器的拱度。

所以sizeof(int*)=sizeof(int) 或 sizeof(int*)=sizeof(long int)

我想要一个自定义数据类型,它是 int 或 long int,具体取决于指针的大小。

我尝试使用宏 #if,但宏的条件不允许 sizeof 运算符。

另外,当使用 if-else 时,typedef 被限制在 if 的范围内。

if((sizeof(int)==sizeof(int *)){
typedef int ptrtype;
}
else{
typedef long int ptrtype;
}
//ptrtype not avialble here

有什么方法可以全局定义 ptrtype 吗?

最佳答案

在 C99 中,您可以使用 intptr_t

关于c - typedef 在 C 中存储指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2892733/

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