obtient la fonction
obtient Fonction Description
obtient prototype de la fonction est
char* gets(char* buffer);
jusqu'à ce que la fonction de lecture reçoit une chaîne de caractères ** « \ n » ** fin, et la lecture finale « \ n » dans « \ 0 » (extrémité du drapeau de chaîne)
premier obtient fonction retourne l'adresse d'un tableau, à partir de il a commencé à se répandre dans le premier réseau d'adresses de caractères
si la lecture échoue retournera NULL
obtient défaut de fonction
obtient la fonction ne déterminera pas la limite supérieure, qui obtient la fonction peut conduire à un tableau de caractères pour lire le débordement trop, il convient de noter que la taille du tableau dans le programme, pour éviter le débordement pourrait autrement modifier la pile de données!
fonction fgets
fgets Fonction Description
obtient prototype de la fonction est
char* fgets(char* buffer, int bufsize, FILE *stream)
Enfin, il faut un troisième paramètre pour indiquer le fichier à lire. Si les données sont lues à partir du clavier, il peut être utilisé comme paramètre stdin, comme indiqué dans le code suivant:
#include <stdio.h>
int main(void)
{
char a[105];
fgets(a, 11, stdin);
puts(a);
return 0;
}
Entrée: aaaaaaaaaaa
Sortie: aaaaaaaaaa
D' abord, obtient la fonction est différente, pas lu fgets fonction de saut de ligne, et lira le dernier caractère remplace « \ 0 », signifie que le dernier caractère ne sera pas en mesure de stocker des données, bufsize est le nombre de la chaîne de caractères que vous voulez entrer, par exemple, lorsque vous voulez entrer n caractères, bufsize doit être réglé sur n + 1, ce qui est 10 au- dessus d' une sortie de code de raison.
Remarque lecture d'arrêt lorsque la fonction fgets rencontrera « \ n » ou n-1 a été caractères lus:
Résumé : Lorsque vous voulez saisir une chaîne de n caractères vient de mettre le second paramètre pour n + 1 peut, fonction fgets va lire le dernier « \ n » est remplacé par « \ 0 »