第二段代码的赋值为什么不行?
- C/C++ code
#include "stdio.h" void f(int* q) { *q=10; } int main() { int p; f((int*)&p); printf("%d\n",p);//这个可以 return 0; }
- C/C++ code
void task(void* p) { *(int*)&p=10; } int main() { int val=5; void* pV = &val; void** p = &pV; printf("%p\n",&val); printf("%p\n",*p); task(*p); printf("%d\n",val); return 0; }
函数里*p即可