Problème initialisation tableau structure C

Résolu
Séb -  
 Séb -
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

A voir également:

2 réponses

Séb
 
Merci beaucoup fiddy

ça marche maintenant
5
fiddy Messages postés 11653 Statut Contributeur 1 847
 
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,
0