Я попытался использовать этот код в C ++: < /p>
#include
using namespace std;
int main(){
string buffer;
int ptr = 0;
char c;
do{
c = (char)getchar();
buffer[ptr] = c;
ptr++;
} while (c != '\n');
buffer[ptr] = '\0';
cout
Но это ничего не выводило. Однако, когда я попробовал это в c с: < /p>
#include
int main(){
char buffer[1204];
int ptr = 0;
char c;
do{
c = (char)getchar();
buffer[ptr] = c;
ptr++;
} while (c != '\n');
buffer[ptr] = '\0';
printf("%s", buffer);
return 0;
}
< /code>
Это сработало. Кроме того, в коде C вы можете добавить Malloc или Calloc для динамического управления памятью, но я просто хочу знать, почему он не работает в коде C ++ и как я могу ее исправить.
Подробнее здесь: https://stackoverflow.com/questions/797 ... terminal-i