Gast
#635925
Hallo hab ein Problem mit sizeof was mach ich falsch. Die berechnete size ist immer 4. Aufruf mit: char buf = "Hallo Welt"; senDataTest1(0x01,buf); Funktion:
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
|
Anzeige
|
SIZEOF array ARM GCC
Gast
#635925
Hallo hab ein Problem mit sizeof was mach ich falsch. Die berechnete size ist immer 4. Aufruf mit: char buf = "Hallo Welt"; senDataTest1(0x01,buf); Funktion:
Probier's mal mit strlen(). Mit sizeof kriegst du hier nur die Grösse vom Zeiger auf den String, nicht die Länge vom String.
Gast
#635934
sizeof(dataBuff) = 32 Bit = 4 Byte sizeof(dataBuff[0]) = 1 Byte = 1 Byte
Gast
#635944
Danke. Der springende Punkt ist der, dass in senDataTest1 die Variable dataBuff kein Array, sondern ein Pointer ist. Daher kriegst du konequenter Weise auch nicht mehr die allokierte Größe des Arrays sondern den Speicherverbrauch eines Pointers mit sizeof.
Gast
#636936
okay, danke. Antwort schreibenBitte melde dich an, um einen Beitrag zu schreiben. |
Anzeige
|