arthurdubois King Arthur | Bonsoir,
Je bosse sous windows7 et mon IDE est Code::Block
J´ai ecris un code en c me permettant de lire et ensuite enregistrer les donnees qui m´interesse dans un tableau de caracteres a deux dimensions.
- Je lis la variable suivante:
Code :
- char info[30] = "D12,25FD12,55F11,89FD12,3F";
|
- Ensuite je l´enregistre dans le tableau
- Puis j´aimerais que ma console m´affiche sucessivement:
Code :
- 12,25
- 12,55
- 11,89
- 12,3
|
Helas je n´y arrive pas, car apres le deboggage de mon programme, j´ai constate que l´instruction printf("%s", t[j][i]);
est a l´origine de l´erreur suivant: Program received signal SIGSEGV, Segmentation fault
J´ai besoin d´aide.
Merci d´avance.
Mon programme:
Code :
- #include <stdio.h>
- #include <stdlib.h>
- #define max_index 6
- #define element 5
- //char info[30] = {'D','1','0',',','0','7','F','D','2',',','3','F','\0'};
- char info[30] = "D12,25FD12,55F11,89FD12,3F";
- char t[max_index][element];
- size_t j,i;
- size_t Number_index = 0; // Number index of table
- size_t N = sizeof(t) / sizeof(t[0]);
- size_t M = sizeof(t) / sizeof(t[j][0]);
- void readandparse(char * pointer)
- {
- char data;
- int k;
- for(k = 0; pointer[k] != 0; k++)
- {
- data = pointer[k];
- if(data == 'F')
- {
- printf("Reception du caractere: F!\n" );
- }
- else if(data == 'D')
- {
- printf("Reception du caractere D: !\n" );
- }
- else
- {
- // Parcourons les indices du tableau de
- // t[0] a t[max_index - 1]
- for(j = 0; j < N; j++)
- {
- // Pour chaque element t[j] du tableau,
- // ecrivons les donnees dans t[j]
- //de t[j][0] a t[j][element - 1]
- for(i = 0; i < M; i++)
- {
- t[j][i] = data; // Write data into string with two dimensions
- printf("%s", t[j][i]);
- }
- printf("\n" );
- }
- }
- }
- }
- main()
- {
- readandparse(info);
- return 0;
- }
|
Message édité par arthurdubois le 16-12-2012 à 10:54:47
|