#include <iostream>
using namespace std;
int main() {
char * c;
cin >> c;
return 0;
}
我正在尝试从长度未知的用户那里获取 C 字符串行。我知道如果我声明c为char c[80]而不是char * cthen 它不会导致段错误。
但是,如果我不想将用户限制为80 - 1字符怎么办?我可以使用一个非常大的数字,但这只会浪费空间。
我也很想知道为什么上述程序会导致段错误。据我了解,cin提取运算符 ( >>) 知道NULL终止 C 字符串。究竟是什么导致了这个问题?