Я немного запутался в чем-то. У меня сложилось впечатление, что правильный способ чтения C-строки scanf()
шел по линии
(не берите в голову возможное переполнение буфера, это просто простой пример)
char string[256];
scanf( "%s" , string );
Тем не менее, следующее, кажется, тоже работает,
scanf( "%s" , &string );
Это только мой компилятор (gcc), чистая удача или что-то еще?
scanf
, и вопрос, и принятый ответ сосредоточены на это, и опустить критически важные ограничения для максимальной длины ввода, которые должны использоваться в реальном коде (но помимо этого вопроса).