C Datentypen |
24.02.2014, 14:55 | Auf diesen Beitrag antworten » |
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 |
|
|
24.02.2014, 16:25 | Auf diesen Beitrag antworten » |
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) |
24.02.2014, 18:52 | Auf diesen Beitrag antworten » |
lilli. | vielen dank |
25.02.2014, 19:18 | Auf diesen Beitrag antworten » |
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, |
Anzeige | |
|
|
Verwandte Themen
Die Beliebtesten » |
Die Größten » |
Die Neuesten » |