Мне интересно, что является принятым способом ввода ввода из командной строки, который также фиксирует пробел. Я думал, что это сделаю это ...Чтение стандартного ввода в массив символов - C++
char text[500];
int textSize = 0;
int main() {
while (!cin.eof()) {
cin >> text[textSize];
textSize++;
}
for(int i = 0; i < textSize; i++) {
cout << text[i];
}
return 0;
}
Но похоже, что он пропускает пробел. Я переключился на это ...
char c;
while ((c = getchar()) != EOF) {
text[textSize] = c;
textSize++;
}
, который отлично работает, но я знаю это из книги программирования C. Интересно, как бы я справился с этим в C++
Вы можете использовать 'istream :: get' – user3813674
_'char text [500];' _ Скорее используйте 'std :: string'. –
['while (! Cin.eof())'] (http://stackoverflow.com/questions/5605125/why-is-iostreameof-inside-a-loop-condition-considered-wrong) является ошибкой –