gpt4 book ai didi

c - C代码的可移植性

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

我有以下代码

int main()
{
int a=6;
void *p;
p=&a;
p++;
}

此处的 void 指针是否递增了一个特定值(如果它持有任何数据类型的地址)?

在上面的例子中,p 递增 1,即使它指向一个整数值。根据我的说法,上面的代码调用了 Implementation Defined 行为。

最佳答案

从标准 C 的角度来看,代码无效。增加 void * 指针或任何其他指向不完整 类型的指针是非法的。

您的编译器将其实现为扩展,当然,这是不可移植的。

关于c - C代码的可移植性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2424912/

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