咨询字符型指针或整形指针在定义后分配内存空间的问题
在定义字符或整型指针的时候,是不是必须要先分配空间,再使用?如这题
#include"stdio.h"
int main(){
char *a;
gets(a);
printf("%s",a);
}
,并没有用如下方式分配内存
char a[80];
char* b=a;
你为什么能正确运行?还有是不是可这样理解,在程序中如出现
char *a;
gets(a);
这种情况,他会随机的分配内存地址,如在大程序中,这样使用,可能会占用其他变量的内存,引起程序错误,所以在定义指针的时候,必须要先赋予地址?????????????