今天碰到一个问题,
char *str;
scanf("%s",str);
程序一直报错,最后查到这两句。
很明显,str是一个char类型的指针,但是我声明完了以后就直接给它赋值。这是不可以的。
必须给他开辟空间,让它知道要把数据存储在哪里。
#include<cstdlib>
char *str= (char*)malloc(sizeof(char));
scanf("%s",str);
程序正常启动。
今天碰到一个问题,
char *str;
scanf("%s",str);
程序一直报错,最后查到这两句。
很明显,str是一个char类型的指针,但是我声明完了以后就直接给它赋值。这是不可以的。
必须给他开辟空间,让它知道要把数据存储在哪里。
#include<cstdlib>
char *str= (char*)malloc(sizeof(char));
scanf("%s",str);
程序正常启动。