Bonjour,
Voilà j'ai un petit soucis concernant une structure, je souhaiterais ajouter un tableau de chaînes de caractères.
Voici ma structure dans mon fichier.h
J'ai ensuite créer une fonction ajouter dans mon fichier.c
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 #ifndef TEST_H_INCLUDED #define TEST_H_INCLUDED typedef struct tab { char **table; int len; } tab; void ajouter(tab *tableau, char *ligne); #endif
Ma fonction pour créer un nouveau tableau
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 void ajouter(tab *tableau, char *ligne) { tableau->table[tableau->len] = ligne; tableau->len++; }
et un main pour tester
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 tab *create() { tab *new = malloc(sizeof(tab)); new->len = 0; return new; }
Apparemment ça bug dans la fonction ajouter, j'ai pas de message d'erreur (ça compile), mais avec gdb, ça stoppe dans la fonction.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 int main(void) { tab *T = create(); ajouter(T, "Bonjour"); afficher(T); return 0; }
Bref il doit y avoir un soucis dans la syntaxe ou une incompréhension de ma part
Je vous remercie pour votre aide...
P.S Il y a sans doute une autre façon de faire ce genre d'exercice, mais je m'entraîne aux structures.
P.S2 La syntaxe me paraissant la plus logique était
Mais le compilateur n'a pas aimé
Code : Sélectionner tout - Visualiser dans une fenêtre à part tableau->table[tableau->len][] = ligne;
Partager