字符串指针问题
请教下面代码为什么运行异常7 char *st,*st2;
8 printf("please input a string:");
10 scanf("%s",st);
13 printf("%s\n",st)
运行后提示“段错误 (核心已转储)”后就终止了。
而在第8行,或者第10行也行,在下面加“st2 = st;”就能够正常运行了,谢谢。
#include <stdio.h> #include <stdlib.h> int main() { char *st = (char *)malloc(100); printf("please input a string:"); scanf("%s",st); printf("%s\n",st); free(st); return 0; }