C ++ fgets () - C ++ standardna knjižnica

Funkcija fgets () u C ++ čita određeni maksimalni broj znakova iz zadanog toka datoteka.

prototip fgets ()

 char * fgets (char * str, int count, FILE * stream);

fgets()Funkcija čita najviše count-1likova iz zadanog file potoka i pohranjuje ih u nizu na koji pokazuje str.

Raščlanjivanje se nastavlja sve dok se ne dogodi kraj datoteke ili dok se ne nađe znak novog retka ( n). Polje str sadržavat će i znak novog retka u slučaju da bude pronađen. Ako se ne dogodi pogreška, na kraju str. Zapisuje se null znak.

Definirano je u datoteci zaglavlja.

fgets () parametri

  • str: Pokazivač na niz znakova koji pohranjuje sadržaj datoteke.
  • count: Maksimalan broj znakova za pisanje.
  • stream: tok datoteke za čitanje znakova.

fgets () Povratna vrijednost

  • U uspjehu funkcija fgets () vraća str, a u slučaju neuspjeha vraća null pokazivač.
  • Ako je kvar uzrokovan zbog stanja datoteke na kraju, postavlja eofindikator. U ovom slučaju, sadržaj str se ne mijenja.
  • Ako je kvar uzrokovan nekom drugom pogreškom, postavlja indikator pogreške. U ovom slučaju, sadržaj str je neodređen. Možda neće biti ništetno ukinuti.

Primjer: Kako funkcionira funkcija fgets ()

 #include #include using namespace std; int main() ( int count = 10; char str(10); FILE *fp; fp = fopen("file.txt","w+"); fputs("An example file", fp); fputs("Filename is file.txt", fp); rewind(fp); while(feof(fp) == 0) ( fgets(str,count,fp); cout << str << endl; ) fclose(fp); return 0; )

Kada pokrenete program, mogući izlaz bit će:

 Primjer datoteke Datoteka je file.t xt

Zanimljivi članci...