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.