Die letzten 4 Beiträge |
ed209 |
Hi
Sieht stark nach schlecht gestellten Hausaufgaben aus.
Soweit ich weiß schreibt der C Standard keine bestimmte bit-breite für chars vor.
Gruß,
ED209, |
lilli. |
vielen dank
|
eulerscheZahl |
a) -128 bis 127 ist richtig.
und ja, Buchstaben sind da mit abgedeckt, A hat z.B. die 65 (im ASCII-Code).
b) char txt[20] bewirkt, dass 20 char allokiert werden, also 20 Byte.
c) mit sizeof() erhältst du die Größe der Variablen in Byte.
also hast du:
1.: sizeof(char) = 1 Byte
2.: sizeof(str[9]) = sizeof(int) = 4 Byte (zumindest bei 32-Bit Systemen)
3.: sizeof(str) = 42 * sizeof(int) = 168
4.: sizeof(&str) = 4 (Die Adresse der ersten Speicherzelle von str, bei 32-Bit Systemen eben 32 Bit) |
lilli. |
C Datentypen
Meine Frage:
Hallo ich habe folgende Fragen.
a) welche zahlenbereiche deckt signed char ab?
b) Wie viele Byte(char) werden für die Definition der Variable txt allokiert? char txt[20] = "Hello world!\0";
c) Welche Zahlenwerte liefern folgende Ausdrücke auf einem Rechner mit 32Bit Architektur und bei Verwendung des gcc
char c;
int str[42]
1.sizeof(c);
2.sizeof(str[9]);
3.sizeof(str);
4.sizeof(&str);
Meine Ideen:
a) -128-127 (wird auch der Bereich 'A'...'z' abgedeckt?)
b) 13
c) hier habe ich leider keine Ahnung |
|
|