Tableau de structures en C
onjour,
Je suis en train de modifier un petit programme de physique écrit en C.
J'ai besoin de renseigner dans mon programme des informations sur plusieurs éléments chimiques : un numéro atomique (entier) et une chaîne de caractères (deux carac).
Exemple : pour l'élément Li, le numéro vaut 3.
Voici comment je voyais les choses :
Code:
1 2 3 4 5 6 7 8
| typedef struct
{
char* nom;
int Z;
} atome;
atome periodic_table[2]={{'Li',3},{'Fe',26}};
printf("%s %d ", periodic_table[1].nom, periodic_table[1].Z); |
Mais comme vous vous en doutez, il y a plein d'erreurs dans les deux dernière lignes :
Citation:
read_CAR.c:35: attention : initialization makes pointer from integer without a cast
read_CAR.c:36: erreur: expected declaration specifiers or ‘...’ before string constant
attention : la définition de données n'a pas de type ni de classe de stockage
read_CAR.c:36: erreur: conflicting types for ‘printf’
read_CAR.c:36: note: a parameter list with an ellipsis can’t match an empty parameter name list declaration
Il doit y avoir un premier problème : il me semblait que la première cellule d'un tableau commençait à 0 mais le compilateur me dit un truc du genre "table index out of range" si j'essaie. de définir les cellules 0 et 1
En bref, l'idée d'un tableau de structures est-elle bonne ? Comment puis-je accéder à une composante de ma structure ? Le point ne semble pas fonctionner.
Merci d'avance