1) 初始化我使用的指针:
int number, *Pnumber;
Pnumber=&number;
number=10;
我这样做对吗?
关于:
int *Pnumber;
*Pnumber=10;
当我编译它时,我得到:
RUN FAILED (exit value 1, total time: 858ms)
顺便说一句。我需要使用 free(Pnumber) 来释放内存吗?
最佳答案
Am I doing this right?
是的,你是。
what about:
`int *Pnumber;
*Pnumber=10;`
Pnumber
是一个初始化指针。取消引用此指针会导致未定义的行为。 Pnumber
必须指向分配的内存(指向变量或动态分配的内存区域)。
btw. do I need to use free(Pnumber) to free the memory?
只要不使用malloc
,就不要使用free
。
关于c - 关于C中指针的一些疑问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14547760/