为什么我不能将unsigned int指针转换为unsigned int?

时间:2015-12-17 23:34:18

标签: c casting

我试图将unsigned int的地址强制转换为unsigned int但是当我编译时,我收到警告:

  

从指针强制转换为不同大小的整数

以下是一些有助于演示的代码:

unsigned int i, ret, offset = 270;
ret = (unsigned int) &i - offset;

我希望i的地址转换为unsigned int类型,但我不明白为什么它不起作用。

1 个答案:

答案 0 :(得分:1)

这里,i不是指针。如果需要返回指针,则可能需要指针变量。在您的示例中,返回值返回 i减去270 的位置,这对我来说无用。我无法想到任何可能对我有用的例子。