Problème initialisation tableau structure C

Résolu
Bonjour a tous

voila, je débute en C, et j'ai un soucis pour initialiser un tableau de structure qui contient une chaine de caractères.

voila ma structure

struct Reg_Produit{

int NumProduit;
char Description[21];
float Prix;
};

je creer un tableau de 100 éléments de type struct Reg_Produit

struct Reg_Produit TProduit;

et j'essaye de l'initialiser avec une boucle for

for (i=0;i<=100;i++){
TProduit[i].NumProduit=i;
TProduit[i].Description="";
TProduit[i].Prix=0;
}

la compilation échoue en me disant:

incompatible types assignment of 'const char[1]' to 'char[21]'

quelqu'un de patient veut bien me dire comment initialiser ce tableau avec une boucle for?

merci beaucoup

2 réponses

  1. Merci beaucoup fiddy

    ça marche maintenant
    1. Contributeur
      Bonjour,
      Attention à la condition d'arrêt de votre boucle for.
      Si vous créez un tableau de 100 éléments, le dernier sera le 99ème (numérotation commençant à 0 oblige !).
      Il faut donc mettre : for(i=0;i<100;i++) /*inférieur strictement*/
      De plus, vous affectez mal les valeurs aux chaînes de caractères :
      strcpy(TProduit[i].Descrption, ""); ou tout simplement TProduit[i].Description[0]=0;

      Cdlt,