为什么在取消引用时仍必须进行类型转换时使用空指针

时间:2018-07-17 12:35:24

标签: c

菜鸟警报;

我正在学习C,遇到过void*

我不了解的是,如果我referencing an int variablevoid pointer在一起,为什么我不能简单地dereference ALSO with a void pointer。如果需要,我必须进行类型转换。

那么,为什么我要使用void*开头呢?如果我总是要使用它进行类型转换,就说一个整数。为什么不一直使用int*

代码:

 int main()
 {
    int i = 10;
    void* p = &i;

    printf("%i", *(int*)p); // typecasting before dereferencing
    return 0;
 }

0 个答案:

没有答案