C standard library :: stdio
fputc
int fputc (int c, FILE *stream)
Denne funktion skriver en byte c til output stream på den position indikeret af en, hvis defineret, tilhørende fil-position indikator. Den konverterer c til unsigned char for skrivningen. Hvis filen ikke kan manipulere position eller hvis filen blev åbnet i append mode er byte'n lagt til enden af filen.
Returværdi
Returnerer byte'n, hvis skrivningen lykkedes ellers returneres EOF, [CX] og errno sættes til indikation af fejlen.
Fejl
Funktionen vil fejle hvis:
- [EAGAIN]
- [CX] O_NONBLOCK flaget er sat for file descriptor bagom stream og tråden skal vente i en skrive-operation.
- [EBADF]
- [CX] File descriptor bagom stream er ikke en valid file descriptor åben for skrivning.
- [EFBIG]
- [CX] Et forsøg på at skrive til en fil der overstiger systemets maksimum for filstørrelse.
- [EFBIG]
- [XSI] Et forsøg på at skrive til en fil der overstiger processens maksimum for filstørrelse.
- [EFBIG]
- [CX] Filen er en almindelig fil og et forsøg på at skrive på eller udover offset maksimum.
- [EINTR]
- [CX] Skriveoperationen blev stoppet grundet modtagelsen af et signal og ingen data er derved overført.
- [EIO]
- [CX] En fysisk I/O fejl opstod, eller processen er et medlem af en baggrunds processgruppe der forsøger at skrive til den kontrollerende terminal, TOSTOP er sat, processen hverken ignorerer eller blokerer ikke SIGTTOU, og processgruppen er uden parent process. Fejlen kan også returneres af system specikikke implementeringer
- [ENOSPC]
- [CX] Der ikke er mere fri plads tilgængelig på den device hvor filen er placeret.
- [EPIPE]
- [XSI] Et forsøg på at skrive til en pipe eller FIFO som ikke er åben for læsning af nogen process. Et SIGPIPE signal sendes også til tråden.
- [ENOMEM]
- [CX] Ikke nok memory tilgængelig.
- [ENXIO]
- [CX] En forespørgsel til en ikke eksisterende device blev afgivet, eller forespørgslen var udenfor kapaciteten af denne device.