我有以下情况:

struct Lamp {
  char *highAddress [9];
  char *lowAddress [9];
  bool OnOff;
  bool active;
  uint8_t power;
  uint8_t brightness;
  uint8_t temperatures;
  uint8_t faultCount;
} ;

struct lamps Lamp [] = {
  { (char *) "0013A200" , (char *) "4094500D" , false, true , 0, 0 , 0, 0 } ,
  { (char *) "0013A200" , (char *) "40B12530" , false, true , 0, 0 , 0, 0 } ,
  { (char *) "11111111" , (char *) "22222222", false , false, 0, 0 , 0, 0 } ,
  { (char *) "33333333" , (char *) "44444444", false , false, 0, 0 , 0, 0 } ,
  { (char *) "55555555" , (char *) "66666666", false , false, 0, 0 , 0, 0 } ,
  { (char *) "77777777" , (char *) "88888888", false , false, 0, 0 , 0, 0 } ,
  { (char *) "99999999" , (char *) "00000000", false , false, 0, 0 , 0, 0 } ,
  { (char *) "AAAAAAAA" , (char *) "BBBBBBBB", false , false, 0, 0 , 0, 0 } ,
  { (char *) "CCCCCCCC" , (char *) "DDDDDDDD", false , false, 0, 0 , 0, 0 } ,
  { (char *) "EEEEEEEE" , (char *) "FFFFFFFF", false , false, 0, 0 , 0, 0 } ,
 };

用avr-gcc-C99编译得到的消息如下所示。
可能是什么?
非常感谢你。
多梅尼科

最佳答案

成员highAddresslowAddress是指针数组。只要使它们成为简单的指针(或数组),就可以正常工作:

struct Lamp
{
    char *highAddress;
    char *lowAddress;
    ...
};

关于c - 在初始化结构'...期间发出警告,使指针从整数开始而没有强制转换',我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20593056/

10-11 23:17
查看更多