Estou um pouco confuso sobre alguma coisa. Fiquei com a impressão de que a maneira correta de ler uma string C scanf()
seguia as linhas de
(não importa o possível estouro de buffer, é apenas um exemplo simples)
char string[256];
scanf( "%s" , string );
No entanto, o seguinte parece funcionar também,
scanf( "%s" , &string );
Este é apenas o meu compilador (gcc), pura sorte ou algo mais?
scanf
e a pergunta e a resposta aceita se concentram em e omita as restrições criticamente importantes para o comprimento máximo de entrada que devem ser usadas no código real (mas estão além do objetivo desta pergunta).