passage de tableau dynamique
salut,
j'ai écrit un bout de script simplifié au maximum pour comprendre pourquoi je n'arrive pas à passer un tableau de caractère dans une fonction.
voici mon code :
Code:
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
| #include "libecoPCR/ecoPCR.h"
#include <stdio.h>
#include <string.h>
#include <getopt.h>
void printpattern(char *pattern, int p){
int i;
for(i=0;i<p;i++){
printf("%s\n",pattern[i]); // warning: format '%s' expects type 'char *', but argument 2 has type 'int'
}
}
int main(int argc, char **argv){
char **pattern = MALLOC(sizeof(char *),"error pattern initialisation");
int p =0;
for (p=0 ; argc > optind ; optind++, p++){
pattern[p] = MALLOC(strlen(argv[optind])+1,
"Error on pattern allocation");
pattern[p] = argv[optind];
}
printpattern(*pattern,p);
return 0;
} |
Mon compilateur me met un warning et j'ai un bus error à l'execution. J'ai essayé différentes solutions, mais je n'arrive pas à récupérer le contenu de mon tableau pattern.
Merci du coup de main