C/C++

void类型指针初探

2017-08-11  本文已影响0人  Dumbass

之前学二位数组的时候就在想,有没有可能弄一种没有钦定类型的指针,这样的话自由度大大的提高,说不定可以玩出新花样
然后就有了,看一下代码:

#include <stdio.h>
int main(void)
{
  int var = 65535;
  void *ptr = &var;
  printf("%d\n",*(int*)ptr);
  return 0;
}

我们在上述代码中声明了一个var变量,赋值为65535,并且声明了一个指向varvoid类型指针ptr
void类型指针的自由度极高,在printf语句中,我们需要强制将其转为int*类型的指针才能让编译通过,这是因为如果我们不指明指针类型,printf函数就无法知道变量的类型,进而导致程序不可能正确执行。

上一篇 下一篇

猜你喜欢

热点阅读