n e jo d e A R e H I V
Ma oS en e
Sistemas de E/S en e
Perifrico.
Corriente
Archivo
consola -- teclado stdin
I
standard input
Impresora stdprn
standard printer
'-
.. _ u
. ' , . , : :
_ _..... __ .. ~ ~" t
I
... , _
,"'
.. I -_
nclude : stdio.h _ .,
','
lt
Transparencias de Archivcrs - # 4t
-----------------------------~--
1* stdio.h Definitions for stream inputloutpUt. *1
I-~------------------~---------------~----l
: 1* _ null.h : Definition of NULL. *1 .:
I I
. I
: #ifndef NULL l
" I
:# define NULL OL . :
1#
I
endif I
I
L _________________________________________ ~
I #endif I
... ...
...
...... . . . .. .
typedef struct {
.......
unsigned ~~:~. fl ags; ....:::- 1* File status flags */
..
0 11 11 11 11 11 11
Transparencias de Archivos - # 5
#define OxOO03
#define
- FF- RDWR
READ OxOOOl
/* Read/write flag
Read only file
*/
/* */
#define
#define
- FF- WRIT OxOO02
BUF OxOO04
/*
/*
Write only file
Malloc'ed Buffer data
*/
*/
#define F LBUF oxoooa /* line-buffered file */
#define FERR Ox0010 /* Error indicator */
. ,;
,;,;
. ,;,;
,;
----~~---~---~-----------~-----~
/* The following macros provide for common functions */ .
Transparencias de Archivos - # 7
.; , \..
Prototipo:
FILE * fopen (canst"fhar * path , canst char * made);
" I---------------------~--~
path : path + nombre + ext~si - - - - Las variables de cualquier tipo :
r
Lo veremos
:ngresados por la lnea de cOlnandos +1 ms adelante
(?) main ( nt argl , char *arg2[], char *arg3[])
arg2 es un puntero a puntero a charo Seala el inicio de un vector de
punteros a char de dimensin argl ' . Cada posicin del vector apunta a una
string que se corresponde con los argumentos ingresados.
Si por ejemplo ejecutramos lo siguiente: "C:\>miJrg -t 12" ... obtendramos...
r .exe " ~es cadena)
ar 2 1 ="-t" (es una cadena
.
Transparencias de Archivos - # 9
Prototipo:
int fgetc (FI LE * stream ); o int getc (FI LE * stream );
R.~torno:
xito: carcter ledo (en un int)
Error o fin de Archivo: EOF
Prrototipo:
int fputc (int e , FILE * stream);
int putc (int e , FI LE * stream );
e: caracter a escribir.
Retorno:
xito: carcter escrito ( c )
Error: EOF
Ejemplos: fputc ('A' ,stdout); putc (c,fp);
. .
Transparencias de ArchivoS" - # 1Q'I,
.
Funcin: rewind
Funcin: fseek
Funcil : ft 11
Macro: feof
INTERESANTE!!!)
.
.
.
Funcin: ~ ets ..
Retorno:
xito: str
Retorno:
xito: ltimo carcter escrito
Error: EOF
uncin: fseanf
Prototipo:
size_t fscanf (FILE * stream, constchar* control , vari ables ... );
Retorno:
xito: n-Cantidad de campos ledos, convertidos y guardados.
Fin de Archivo: EOF.
. Prototipo:
size_t fprintf (FILE * stream,const char* control , variables ... );
. stream : Es el puntero obtenido a travs de la funcin fopen( ... ).
control : Cadena de control.
variables: Lista de variables origen.
Retorno:
Error: EOF.
su cadena de control, esconsiderado como el fin del campo a leer. [fscanf l.c]
Prototipo: ... __ ..
size_t fread (void* buf,(~ize_(~sz , size_t n ,FILE * fp );
---, .
Funcin: fi rite
Prototipo:
size_t fwrite (void* buf, size_t 5Z , size_t n ,FILE * fp );
buf: buffer de origen, (bloques a almacenar).
sz: tamao de cada bloque.
n: Cantidad de bloques a escribir.
Retorno:
xito: n-Cantidad de bloques escritos.
Error: valor < n (posiblemente O).
Transparencias de Archivos' - # 16~"
Funcin: fflush
Accin: Vuel~o forza<to de datos. ( del buffer al dispositivo) .
Prototipo: nt fflush (FILE * stream );
stream : Es el puntero obtenido a travs de la funcin fopen( ... ).
Retorno: xito: O.
Error: EOF.