C programmering for nybegyndere
Datatyper
Datyper i C varierer på de simple datatyper, det er dem der indeholder bogstaver (char) og heltal (int). De varierer fordi C arbejder så tæt sammen med processortypen, det har betydning for at C kan oversætte til den mest effektive kode (fylder mindst) og kører hurtigst. Processorer der arbejder internt i sine registre med 16-bit, vil højst sandsynligt have en C compiler der arbejder med 16-bit int datatyper. Derfor skete der et skift i C versionerne, da Intel serien af CPU'er skiftede til 32-bit registre.
Type | bits | Interval |
---|---|---|
char | 8 | -128 til 127 |
int | 16/32 | -32768 til 32767 -2147483648 til 2147483647 |
float | 32 | 3.4*10-38 til 3.4*10+38 |
double | 64 | 1.7*10-308 til 1.7*10+308 |
Du kan få svar på hvilke størrelser på variabler din compiler har ved at lave følgende program.
datatyper.c
- Compilér og kør programmet
# gcc datatyper.c
# ./a.out
char -128...127
unsigned char 0...255
short int -32768...32767
unsigned short int 0...65535
int -2147483648...2147483647
unsigned int 0...4294967295
long int -2147483648...2147483647
unsigned long int 0...4294967295
#
# ./a.out
char -128...127
unsigned char 0...255
short int -32768...32767
unsigned short int 0...65535
int -2147483648...2147483647
unsigned int 0...4294967295
long int -2147483648...2147483647
unsigned long int 0...4294967295
#