1. Description du problème
scanf()
Les fonctions et gets()
les fonctions peuvent être utilisées pour saisir des chaînes, mais il existe des différences de fonctionnalité.
gets
Les espaces peuvent être acceptés et seront automatiquement ajoutés après la fin'\0'
scanf
La rencontre d'un espace , d'un retour chariot et d'une tabulation considérera que l'entrée est terminée, elle ne peut donc pas recevoir d'espaces et elle sera automatiquement ajoutée après la fin'\0'
Mais en C++, l'utilisation gets
rapportera une erreur :
2. Solutions
Après avoir recherché des informations plus tard, j'ai découvert que VS2015 ne gets
le , et il devient gets_s
, et le nom du tableau ne peut pas être écrit seul entre parenthèses derrière, et le nombre dans le tableau doit être ajouté. L'utilisation est la suivante :
gets_s(words, STLEN);
À ce stade, la compilation ne signalera pas d'erreur :