По умолчанию пропускаются все пробелы (пробелы, табуляции, новые строки и т. Д.). Вы можете либо изменить его поведение, либо использовать немного другой механизм. Чтобы изменить его поведение, используйте манипулятор noskipws
следующим образом:
cin >> noskipws >> a[i];
Но, поскольку вы, кажется, хотите посмотреть на отдельных персонажей, я бы предложил использовать get
, как это до цикла
cin.get( a, n );
Примечание: get
прекратит извлекать символы из потока, если обнаружит символ новой строки (\n
) или после n-1 символов. Он останавливается рано, так что он может добавить нулевой символ (\0
) в массив. Подробнее об интерфейсе istream
можно прочитать здесь .