Hi,
ich hab das jetzt ein Wenig anders gelöst und steh vor einem neuen Problem:
sizeof (NormArray[1]) geht (bzw. Compiler hat nichts dagegen) und müsste mir die größe des Array-elements in Byte geben.
Jetzt hätte ich gerne die Größe des gesamten Arrays in Byte
Code:
#ifndef PROGMEM
#define PROGMEM __attribute__((__progmem__))
typedef char PROGMEM prog_S8;
typedef unsigned char PROGMEM prog_U8;
#endif
typedef struct Norm
{
prog_U8 factor;
prog_U8 decimal;
const prog_S8 sNormUnit[NORM_UNIT_MAXLEN];
const prog_S8 sNormName[NORM_NAME_MAXLEN];
}norm_t;
norm_t PROGMEM NormArray[] = {
// Faktor Decimal Unit Name *
{ 1, 0, { "V"}, { "VOLTAGE 1"} }, // 0
{ 1, 3, { "mV"}, { "VOLTAGE 2"} }, // 1
{ 1, 0, { "A"}, { "CURRENT 1"} }, // 2
};
unsigned char normAmound;
normAmound = sizeof (NormArray);
normAmound = sizeof (NormArray);
gibt bei mir immer folgenden Fehler:
../xxxxxxx.c:523: error: invalid application of `sizeof' to incomplete type `({anonymous})'
Warum ist der type hier anonymous?
Ich dachte erst das liegt an dem PROGMEM aber es geht auch ohne nicht.
Lesezeichen