Buongiorno corsisti,
dubbio riguardo al paragrafo 1.5.1 del K&R.
Il motivo per cui il tipo scelto per la variabile c sia "int" mi è chiaro.
Ho anche verificato le relative dimensioni in byte col seguente programmino
(se ci sono castronerie segnalatemele):
-----
#include <stdio.h>
int main()
{
printf("EOF\tchar\tint\n");
printf("%d\t%d\t%d\n", sizeof(EOF), sizeof(char), sizeof(int));
return 0;
}
-----
Il cui output è:
-----
EOF char int
4 1 4
-----
Domanda: perché usando il tipo "char" al posto di "int" tutto mi funziona
regolarmente?
-----
#include <stdio.h>
int main()
{
char c;
c = getchar();
while (c != EOF)
{
putchar(c);
c = getchar();
}
return 0;
}
-----
Mi sarei aspettato un crash, o qualcosa di molto brutto...
Grazie!
Carlo
_______________________________________________
BrigX Linux Users Group
[email protected]
http://brigx.it/mailman/listinfo/ml_brigx.it
Proponi la tua idea per una delle nostre serate: http://brigx.it/feedback