@SaddledSharp
Кодер. Увлекаюсь информационной безопасностью.

Как получить данные от пользователя с пробелами простым способом (С)?

Всем привет! Возможно вопрос покажется лёгким и глупым, но я действительно перерыл интернет и ничего не нашел, или я искать не умею. Раньше, когда я писал на С++, у меня таких проблем не было, я просто писал:
getline(cin, variable);
А тут, на Си когда я пишу, к примеру:
char name[256];
printf("Enter your name: ");
scanf("%s", &name);

Если ввести туда:
Enter your name: alfkal kfj jf jafj jf j fjfjfjfjfjf jfj fj fjfjfjf

То в ответ увижу:
Enter your name: Enter your name: Enter your name: Enter your name: Enter your name:

Как это решить максимально простым способом? Что бы обойтись без всяких циклов, функций и прочего.
  • Вопрос задан
  • 1654 просмотра
Решения вопроса 1
jcmvbkbc
@jcmvbkbc
"I'm here to consult you" © Dogbert
scanf("%[^\n]\n", name);
man scanf
Проблема с этим способом: нельзя ввести пустую строку.

Либо, если нет желания использовать исключительно scanf -- fgets.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы