我想从standart输入中读取字符串并在控制台上输出。我用这种方式:
char* cmdline;
do{
scanf("%s\n", &cmdline);
printf("%s\n", cmdline);
}while(cmdline != "quit");
但这不管用。我有这个错误
Segmentation fault (core dumped)
最佳答案
char* cmdline
是一个指针。您没有分配存储字符串的空间。
你应该:
cmdline = malloc(size_of_string);
用于分配动态内存以存储字符串。
否则,请使用char数组而不是指针:
char cmdline[size_of_string];
关于c - C从标准错误读取字符串,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6008636/