指针赋值前的地址


chat *c = 4000;
int *i = 4000;
float *f = 4000;

我想知道为什么它没有给出任何错误,因为我给指针赋值,而在程序中我没有给指针变量

赋地址我认为它会引发一个错误,因为我赋值给指针之前给出指针变量

的地址

char *c = 40000;

char *c;
*c = 40000;

第一个只是声明了一个指向字符的指针,并将其设置为指向内存中的地址40000(该地址可能有效,也可能无效)。

第二个声明了一个指针,然后尝试设置指向的数据到40000,这肯定是错误的,因为指针本身没有初始化。

最新更新