Bonjour a tous,
Je me doute que cette question a été vue 10000 foismais je ne trouve pas sur ce forum qui m'a déja bien aidé de nombreuse fois.
En warning, il me dit que strcopy attends un pointeur vers char et pas un char, pourtant il me semble que c'est ce que j'ai fais.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54 #include <stdio.h> #include <stdlib.h> #include <string.h> int cpteblocks() { char lignelue [256]; int nb_blocks=0; char tab[]="ADD"; FILE* batchFile; batchFile=fopen("D:\\Users\\xxx\\Desktop\\xxx","r"); while(fgets(lignelue, 80, batchFile) != NULL) { if(strstr(lignelue, tab) != NULL) { nb_blocks ++; } } fclose(batchFile) ; batchFile=NULL; return nb_blocks; } int main() { int i=0; int blocks = cpteblocks() ; char * tab_id = NULL; tab_id = malloc((blocks) * (sizeof(80))); //char tab_id[2][80]; char * ligne_lue; FILE* batch; batch=fopen("D:\\Users\\xxxx\\Desktop\\xxx","r"); if (batch==NULL) { fputs("erreur a l'ouverture du fichier\n",stderr); return EXIT_FAILURE; } while (fgets(ligne_lue, 80, batch) != NULL) { strcpy (tab_id[i],ligne_lue); i++; } for (i=0;i<=i;i++) { printf ("%s\n",tab_id[i]); } return (0); }
Et j'ai un petit segmentation fault, je soupconne ma syntaxe même s'il n'y a pas d'erreur a la compilation.
Merci
Partager