gpt4 book ai didi

c - unsigned 和 signed int 指针之间的区别

转载 作者:太空狗 更新时间:2023-10-29 16:24:20 29 4
gpt4 key购买 nike

是否有诸如 unsigned int* 之类的东西不同于 int*。我知道 unsigned 的值范围更大。不过,int* 甚至不能指向任何 unsigned int 吗?

最佳答案

int *unsigned int * 是两种不兼容类型的不同指针类型。它们也是指向不兼容类型的指针。 兼容类型的定义请引用§ 6.2.7 in the C Standard (C11) .

作为指向不兼容类型的指针意味着例如:

unsigned int a = 42;

int *p = &a; // &a is of type unsigned int *

无效(违反了赋值运算符的约束)。

这两种类型之间的另一个区别是对于大多数其他指针类型(尽管在这里不太可能),C 不能保证它们具有相同的大小或相同的表示形式。

关于c - unsigned 和 signed int 指针之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27625301/

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