Feof (jazyk C): Rozdiel medzi revíziami

Z Kiwiki
Skočit na navigaci Skočit na vyhledávání
 
(6 medziľahlých úprav od 2 ďalších používateľov nie je zobrazených)
Riadok 4: Riadok 4:
 
<properties>
 
<properties>
 
knižnica=stdio.h  
 
knižnica=stdio.h  
popis=Otestuje, či je myslený kurzor na konci súboru.
+
popis=Otestuje, či je kurzor na konci súboru.
 
</properties>
 
</properties>
  
Riadok 13: Riadok 13:
  
 
==Podrobný popis funkcie==
 
==Podrobný popis funkcie==
Funkcia otestuje, či je myslený kurzor na konci súboru.
+
Funkcia otestuje, či je kurzor na konci súboru.
  
 
==Parametre==
 
==Parametre==
;''stream'':  [[Jazyk C - smerník (pointer)|Smerník]] na ''FILE'' (súbor), v ktorom chceme zistiť, či myslený kurzor je na konci súboru.
+
;''stream'':  [[Jazyk C - smerník (pointer)|Smerník]] na ''FILE'' (súbor), v ktorom chceme zistiť, či kurzor je na konci súboru.
  
 
==Návratová hodnota==
 
==Návratová hodnota==
  
Táto funkcia vráti nenulovú hodnotu, ak je myslený kurzor na konci súboru, inak vráti 0.
+
Táto funkcia vráti nenulovú hodnotu, ak je kurzor na konci súboru, inak vráti 0.
  
 
==Príklad==
 
==Príklad==
Riadok 29: Riadok 29:
  
 
int main() {
 
int main() {
FILE * subor;
+
    FILE * subor;
  
subor = fopen("C:\\Users\\User\\Desktop\\test.txt", "w+"); //otvorenie súboru pre zapisovanie (sem zadajte vlastné umiestnenie súboru)
+
    subor = fopen("test.txt", "w+");             //otvorenie súboru pre zapisovanie (sem zadajte vlastné umiestnenie súboru)
  
if (subor) { //overenie, či je súbor naozaj otvorený
+
    if (subor) {                                 //overenie, či je súbor naozaj otvorený
fprintf(subor, "Ahoj svet!"); //zapisovanie do súboru
+
        fprintf(subor, "Ahoj svet!");           //zapisovanie do súboru
printf("Text zapisany do suboru.\n");
+
        printf("Text zapisany do suboru.\n");
fclose(subor); //zatvorenie súboru
+
        fclose(subor);                           //zatvorenie súboru
}
+
    }
else {
+
    else {
printf("Subor sa nepodarilo otvorit.\n");
+
        printf("Subor sa nepodarilo otvorit.\n");
}
+
    }
  
subor = fopen("C:\\Users\\User\\Desktop\\test.txt", "r"); //otvorenie súboru pre čítanie (sem zadajte vlastné umiestnenie súboru)
+
    subor = fopen("test.txt", "r");             //otvorenie súboru pre čítanie (sem zadajte vlastné umiestnenie súboru)
 
+
       
if (subor) { //overenie, či je súbor naozaj otvorený
+
    if (subor) {                                 //overenie, či je súbor naozaj otvorený
printf("Text zo suboru: ");
+
        printf("Text zo suboru: ");
char c;
+
        char c;
while (!feof(subor)) { //opakuje, pokiaľ nenájde koniec súboru
+
        while (!feof(subor)) {                   //opakuje, pokiaľ nenájde koniec súboru
c = getc(subor); //načítanie jedného znaku zo súboru
+
            c = getc(subor);                     //načítanie jedného znaku zo súboru
printf("%c", c); //vypísanie načítaného znaku na obrazovku
+
            printf("%c", c);                     //vypísanie načítaného znaku na obrazovku
}
+
        }
fclose(subor); //zatvorenie súboru
+
        fclose(subor);                           //zatvorenie súboru
}
+
    }
else {
+
    else {
printf("Subor sa nepodarilo otvorit.\n");
+
        printf("Subor sa nepodarilo otvorit.\n");
}
+
    }
 
 
  
return(0);
+
    return 0;
 
}
 
}
 
</source>
 
</source>
  
Výstup:
+
''Výstup:''
 
  Text zapisany do suboru.
 
  Text zapisany do suboru.
 
  Text zo suboru: Ahoj svet! 
 
  Text zo suboru: Ahoj svet! 

Aktuálna revízia z 23:18, 19. máj 2020

Rozdelenie funkcií jazyka C podľa knižníc, v ktorých sú definované
<ctype.h> <limits.h> <stdio.h> <stdlib.h> <math.h> <string.h> <time.h>

isalnum
isalpha
isdigit
isgraph
islower
isprint
ispunct
isspace
isupper
isxdigit

printf
scanf
getc
putc
getchar
putchar
fprintf
fscanf
fgetc
fputc
fopen
fclose
feof

system
malloc
qsort
rand
srand
atoi
atol
atof
itoa
div
abs
labs

pow
fabs
exp
log
log10
sqrt
ceil
sin
cos

strlen
strcmp
strchr
strcpy
strstr
strcat
strncat

clock
time

Funkcia feof

knižnica

stdio.h

popis

Otestuje, či je kurzor na konci súboru.


Úplný funkčný prototyp:

int feof(FILE *stream)

Podrobný popis funkcie

Funkcia otestuje, či je kurzor na konci súboru.

Parametre

stream
Smerník na FILE (súbor), v ktorom chceme zistiť, či kurzor je na konci súboru.

Návratová hodnota

Táto funkcia vráti nenulovú hodnotu, ak je kurzor na konci súboru, inak vráti 0.

Príklad

Príklad zobrazuje, ako otvoriť súbor na čítanie a zapisovanie a ako používať funkciu feof. V príklade sú použité aj funkcie fprintf, getc, fopen a fclose. Pred spustením príkladu si zmeňte umiestnenie súboru podľa seba.

 1 #include <stdio.h>
 2 #include <stdlib.h>
 3 
 4 int main() {
 5     FILE * subor;
 6 
 7     subor = fopen("test.txt", "w+");             //otvorenie súboru pre zapisovanie (sem zadajte vlastné umiestnenie súboru)
 8 
 9     if (subor) {                                 //overenie, či je súbor naozaj otvorený
10         fprintf(subor, "Ahoj svet!");            //zapisovanie do súboru
11         printf("Text zapisany do suboru.\n");
12         fclose(subor);                           //zatvorenie súboru
13     }
14     else {
15         printf("Subor sa nepodarilo otvorit.\n");
16     }
17 
18     subor = fopen("test.txt", "r");              //otvorenie súboru pre čítanie (sem zadajte vlastné umiestnenie súboru)
19         
20     if (subor) {                                 //overenie, či je súbor naozaj otvorený
21         printf("Text zo suboru: ");
22         char c;
23         while (!feof(subor)) {                   //opakuje, pokiaľ nenájde koniec súboru
24             c = getc(subor);                     //načítanie jedného znaku zo súboru
25             printf("%c", c);                     //vypísanie načítaného znaku na obrazovku
26         }
27         fclose(subor);                           //zatvorenie súboru
28     }
29     else {
30         printf("Subor sa nepodarilo otvorit.\n");
31     }
32 	
33 
34     return 0;
35 }

Výstup:

Text zapisany do suboru.
Text zo suboru: Ahoj svet!