因此,我在使用getline(cin, str);
然後string text[str.length()];
以及在此之後的語句時想要合併它們(text[e] = text[e] + str[i];
),我得到了分段錯誤。全碼:嘗試從getline中分配字符時出現分段錯誤
#include <cstdlib>
#include <stdio.h>
#include <iostream>
using namespace std;
int main()
{
string str;
int i, e, space = 0;
getline(cin, str);
string text[str.length()];
for(i=0; i<str.length(); i++) {
if(str[i]==' ') {
space++;
e++;
}
else {
text[e] = text[e] + str[i];
}
}
return 0;
}
變長數組不是標準(還)。 – chris