有人可以说我在想什么吗?
int main() {
char eingabe[100];
cin >> eingabe;
eingabe[strlen(eingabe)]='\0';
cout << eingabe << endl;
}
但是我明白了:细分错误
:(
最佳答案
如果cin
包含超过99个字符的行,则cin >>
运算符将写到eingabe[]
缓冲区的末尾。这是错误的,很可能会产生段错误。
您可能要使用 std::string
类,而不是char[]
缓冲区。
如果您有充分的理由使用char [100]缓冲区,则cin.getline(eingabe,100)
是您所需要的。
关于c++ - 数组中的C++ Segmentation Fault用户输入,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24466426/