C ++: n fgets () -funktio lukee määritetyn maksimimäärä merkkejä annetusta tiedostovirrasta.
fgets () prototyyppi
char * fgets (char * str, int count, FILE * stream);
fgets()
Toiminto lukee enintään count-1
merkkiä annetuista tiedostovirrasta ja tallentaa ne array osoitteen sivulle str.
Jäsennys jatkuu, kunnes tiedoston loppu tapahtuu tai uuden rivin merkki ( n) löytyy. Taulukko str sisältää myös uuden rivin merkin, jos se löytyy. Jos virheitä ei tapahdu, merkkijonon loppuun kirjoitetaan tyhjä merkki.
Se määritetään otsikkotiedostossa.
fgets () -parametrit
- str: Osoitin merkistöön, joka tallentaa tiedoston sisällön.
- count: Kirjoitettavien merkkien enimmäismäärä.
- stream: Tiedostovirta, jolla luetaan merkit.
fgets () Palautusarvo
- Menestyksessä fgets () -funktio palauttaa arvon str ja epäonnistumisen yhteydessä nollan osoittimen.
- Jos vika johtuu tiedoston lopputilasta, se asettaa
eof
indikaattorin. Tässä tapauksessa str: n sisältöä ei muuteta. - Jos vika johtuu jostakin muusta virheestä, se asettaa virheen osoittimen. Tässä tapauksessa str: n sisältö on määrittelemätön. Niitä ei voida edes mitätöidä.
Esimerkki: Kuinka fgets () -toiminto toimii
#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; )
Kun suoritat ohjelmaa, mahdollinen tulos on:
Esimerkkitiedoston tiedostonimi on file.t xt