Mon problème est le suivant:
J'essaye de faire un programme qui est un peu compliqué...Mais la petite partie qui ne fonctione pas est suposément simple. Le warning que j'ai est le suivante : format argument is not a pointer (arg 3). Je met une partie du code pour que vous voyez...
Code C/C++ :
/*Alors j'ai une struct qui est definie dans un fichier .h
En fait c'est une typedef struct*/
typedef struct
{
// Champs de l'en-tête d'un fichier image
char ch[TAILLE_CHAINE]; // 1ère chaîne du fichier image
int nbColonnes; // nombre de colonnes de l'image du
// fichier image
int nbLignes; // nombre de lignes de
// l'image du fichier image
int max; // valeur maximale des intensités
// dans les trois canaux (RGB)
} EnTete;
typedef struct
{
// Une image
EnTete lEnTete; // l'en-tête du fichier
Pixel tabPixels[MAX_PIXELS]; // les pixels
} Image;
// Le code qui précéde se trouve dans un fichier .h
// Le code qui suit est dans un fichier .c dans lequel j'appele une
// une fonction qui utilise le type Image sur un pointeur.
void lectureImage(char * entree, Image * imageOri, int * err)
{
//...
// les trois prochaines lignes donne l'erreur suivante
//format argument is not a pointer (arg 3)
fscanf(f,"%i", imageOri->lEnTete.nbColonnes);
fscanf(f,"%i", imageOri->lEnTete.nbLignes);
fscanf(f,"%i", imageOri->lEnTete.max);
Avant les trois lignes j'ai un autre fscanf pour imageOri->lEnTete.ch. Elle ne donne aucun Warning. Ou pensez-vous qu'est le problème?
Le imageOri est defini comme un pointeur, alors je ne comprend pas pourquoi le warning. De plus avec l'autre partie de la struct le lEnTere.ch il n'y a aucun problème?!?!?!