utiliser un unsigned char **
Bonjour a vous tous,
voila j'ai un probleme pour ma fonction suivante, valgrind m'affiche une erreur par rapport a la taille.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| #include <stdio.h>
#include <stdlib.h>
#include <string.h>
enum {FALSE, TRUE};
int alloc(int size, unsigned char *data)
{
if((data = malloc(sizeof(unsigned char)*size))==NULL)
{
fprintf(stderr, "malloc error\n");
return FALSE;
}
return TRUE;
}
int main(void)
{
unsigned char *(*data);
int size = 50;
alloc(size,*data);
return FALSE;
} |
Mon but etant apres avoir compris cette fonction de faire une lecture d'un fichier et d'enregistrer mon fichier dans un unsigend char **
Car dans mon main je connais pas encore la taille de mon flux...
Je vais la connaitre dans mon fichier
Code:
1 2 3 4 5 6 7 8
|
/* Speudo code... */
int main (int argc, char *argv[])
{
unsigned char ** flux;
LireFichier (*flux, argv[1]);
return 0;
} |
Mon idée de depart est elle bonne?
Ou se trouve mon erreur dans mon premier code?
Merci d'avance