Résoudre le problème de rapport d'erreurs lié à l'utilisation de gets() en C++ sous VS2019

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é.

getsLes espaces peuvent être acceptés et seront automatiquement ajoutés après la fin'\0'

scanfLa 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 getsrapportera une erreur :

insérez la description de l'image ici

2. Solutions

Après avoir recherché des informations plus tard, j'ai découvert que VS2015 ne getsle , 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 :

insérez la description de l'image ici

Je suppose que tu aimes

Origine blog.csdn.net/m0_63325890/article/details/127918882
conseillé
Classement