Sida 1 av 1
Datatyper??
Postat: 27 september 2004, 12:57:28
av DeVille
hur lagrar man värdet 1 eller 0 i en char variabel??
om man gör så här char test[2]=('0','0') så blir det bara värdet för tecknet ju!!
Hur fixar man detta???
Postat: 27 september 2004, 13:15:40
av axelsonic
Jag vet inte om det är lämpligt att lagra det i en char.
Vore det inte bättre att lagra det i en int ?
Ex int degspatel[2] = {0,0};
Postat: 27 september 2004, 13:47:42
av DeVille
ehhh.. sorry!
sitter å stirar på koden i kombination med för mycket kaffe så fungerar
inte hjärnan som den ska!!
tack!
Postat: 27 september 2004, 17:31:15
av Sci
Fungerar aldeles utmärkt att lagra det i en char. char är definierad som signed integer för det mesta (tror iaf det är signed). Problemet var att du skrev '0' och inte 0. '0' betyder just ASCII-koden för 0.
Erik
Postat: 27 september 2004, 18:14:54
av Rymdninja
En char är _inte_ en signed integer...
en char är 8 eller 16 bitar. En integer kanske 32....
Postat: 27 september 2004, 18:46:02
av rickeboy
De_Ville>> Är det PC C/C++ eller handlar det om AVR-C?
//Rille
Postat: 27 september 2004, 18:49:24
av sprawl
Näe char tillhör integer familjen och är oftast 8 bitar. Den kan vara 16 bitar i vissa programmeringsspråk och/eller om systemet är konfigurerat för unicode.
Så det stämmer även att char oftast är en signed int på 8 bitar.
Kod: Markera allt
char (signed int 8 bitar)
short (signed int 16 bitar)
int/long (signed int 32 bitar)
long long? (signed int 64 bitar) //tror inte detta är standard.
sen finns det unsigned av dessa också
tex
unsigned char(även kallad byte) det ger ett intervall mellan 0-256.
unsigned short(även kallad word) det ger ett intervall mellan 0-65536.
unsigned int(även kallad dword) det ger ett intervall mellan 0-4,294,967,295.
/Andreas