Farian  | Bonjour !
   Vous ne pouvez pas en C faire ce genre d'assignation.
   Vous pouvez, sauf erreur de ma part, les faire à la création de la variable :    
  Code :
 - XbeeCmd XbeeCmd1 = {{0x00, 0x13, 0xA2, 0x00, 0x40, 0x62, 0xA9, 0x25}, 0x31, "tmp:2000"};
 
  |  
 
   Sinon, vos lignes sont incorrectes car :      * Dans la première, vous tentez d'assigner un tableau à une valeur qui est le 9eme élément (cf. en dessous) d'un tableau
  * Dans la deuxième, vous assignez une valeur au deuxième élément (les indices de tableaux commencent à 0 en C) à un tableau d'un seul élément (d'ailleurs, pourquoi utiliser un tableau au lieu d'un simple "unsigned char" ? Pour pouvoir augmenter la taille plus tard ?)    * Dans la troisième, l'assignation dans une chaine se fait avec strcpy, là, cela revient à l'assignation à cmd d'un pointeur (temporaire, de plus), ce qui est en effet interdit.
   J'espère avoir été clair dans mes tentatives d'explication  
   Bonne continuation !
   PS : Si vous voulez initialiser le champ adresse après la création de la variable, vous devez assigner les octets 1 par 1.    |