Olaf "El Blanco"
2006-04-13 15:41:00 UTC
El siguiente programa, crea un fichero de MAX números. Luego los imprimo.
Si, muy simple, pero tengo una pregunta.
#include <stdio.h>
#define MAX 100
int main()
{
int n;
FILE * fnumbers;
fnumbers=fopen("numeros.txt", "w");
for (n=0; n<=MAX; n++)
fprintf (fnumbers, "%d\t", n);
fclose (fnumbers);
/**************************************/
fnumbers=fopen("numeros.txt", "r");
fscanf(fnumbers, "%d", &n);
while (!feof(fnumbers)) {
printf ("%d\n", n);
fscanf(fnumbers, "%d", &n);
}
fclose (fnumbers);
system("PAUSE");
return 0;
}
El fichero que creo tiene el siguiente formato: 0<TABULADOR>1<TABULADOR>
etc...
Cuando lo imprimo... no tiene en cuanta esos tabuladores...
Tengo entendido que cada tabulador, es guardado como un byte (del ASCII),
pero ¿porque a la hora de imprimirlo en pantalla, no se tiene en cuenta eso?
No es que sea importante, pero quiero entenderlo.
Hago avanzar un apuntador que va guardando los chars (transformados en
enteros) en la variable 'n', Cuando hago avanzar ese apuntador (con cada
fscanf) ¿Como sabe que tiene que avanzar una serie de bits del numero, y
luego otra serie de bits para el tabulador??
Si, muy simple, pero tengo una pregunta.
#include <stdio.h>
#define MAX 100
int main()
{
int n;
FILE * fnumbers;
fnumbers=fopen("numeros.txt", "w");
for (n=0; n<=MAX; n++)
fprintf (fnumbers, "%d\t", n);
fclose (fnumbers);
/**************************************/
fnumbers=fopen("numeros.txt", "r");
fscanf(fnumbers, "%d", &n);
while (!feof(fnumbers)) {
printf ("%d\n", n);
fscanf(fnumbers, "%d", &n);
}
fclose (fnumbers);
system("PAUSE");
return 0;
}
El fichero que creo tiene el siguiente formato: 0<TABULADOR>1<TABULADOR>
etc...
Cuando lo imprimo... no tiene en cuanta esos tabuladores...
Tengo entendido que cada tabulador, es guardado como un byte (del ASCII),
pero ¿porque a la hora de imprimirlo en pantalla, no se tiene en cuenta eso?
No es que sea importante, pero quiero entenderlo.
Hago avanzar un apuntador que va guardando los chars (transformados en
enteros) en la variable 'n', Cuando hago avanzar ese apuntador (con cada
fscanf) ¿Como sabe que tiene que avanzar una serie de bits del numero, y
luego otra serie de bits para el tabulador??