2016-11-25 62 views
0

編譯器返回(近初始化爲 'test_value [2]。單元')默認情況下啓用]錯誤:近初始化爲typedef結構陣列

typedef struct foo { 
     unsigned char unit[10]; 
     unsigned int read_value; 
    }; 

    foo test_value = { 

     {"km",  100 }, 
     {"miles", 50 }, 
     {0,   20 } 
    }; 

爲什麼會出現這種情況?

回答

0

這解決了這個問題:

typedef struct foo { 
     unsigned char *unit; 
     unsigned int read_value; 
    }; 

    foo test_value = { 

     {"km",  100 }, 
     {"miles", 50 }, 
     {0,   20 } 
    }; 

但是,如果仍然有人可以解釋這更好的請!