Вы можете использовать scanf
с преобразованием в набор сканирования примерно так:
char buffer[256];
scanf("%255[^\n]", buffer);
другая возможность заключается в использовании fgets
:
char buffer[256];
fgets(buffer, sizeof(buffer), stdin);
В Linux (и других системах POSIX-ish) у вас, вероятно, также должна быть функция с именем (удивление, удивление) readline
, которая похожа, но выделит пространство, необходимое для входящих данных.