begin process at 2012 05 30 02:10:44
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Divers

 > 

Débutant(e)

 > 

Probleme avec fscanf et pointeurs...en C


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Probleme avec fscanf et pointeurs...en C

lundi 19 avril 2010 à 04:20:54 | Probleme avec fscanf et pointeurs...en C

andreiudinca

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?!?!?!
lundi 19 avril 2010 à 09:50:53 | Re : Probleme avec fscanf et pointeurs...en C

fregolo52

Membre Club
salut,

en effet, étrange !!
mis à part le warning, est ce que ton fichier est bien rempli ?

Sinon, personellement, pour les traitements sur les fichiers, je préfère utiliser fread/fwrite.
lundi 19 avril 2010 à 10:23:27 | Re : Probleme avec fscanf et pointeurs...en C

CptPingu

Administrateur CodeS-SourceS
Peut être comme ceci:
fscanf(f,"%i", &imageOri->lEnTete.nbColonnes);
fscanf(f,"%i", &imageOri->lEnTete.nbLignes);
fscanf(f,"%i", &imageOri->lEnTete.max);

pour imageOri->lEnTete.ch. Elle ne donne aucun Warning.


Normal, ch est un tableau, donc un pointeur, ce qui n'était pas le cas des trois précédent ;)

_____________________________________________
Historique de mes créations, et quelques articles:
http://0217021.free.fr/portfolio
lundi 19 avril 2010 à 12:07:57 | Re : Probleme avec fscanf et pointeurs...en C

fregolo52

Membre Club
ah oui !!
Voilà pourquoi je n'utilise pas fscanf.
lundi 19 avril 2010 à 14:55:36 | Re : Probleme avec fscanf et pointeurs...en C

andreiudinca

Merci beaucoup pour vos rèponses. Finalement cptPingu avait raison il falait mettre &. La je comprend. Merci encore une fois.


Cette discussion est classée dans : fichier, code, image, fscanf, imageori


Répondre à ce message

Sujets en rapport avec ce message

imprimer et image en c++ [ par naney ] je voudre un code source qui me montre comment imprimer et un autre qui me montre comment inserais une image en c++ (n'importe quel format d'image) ex problème de lecture d'un fichier txt [ par yeager ] Bonjour!J'ai un problème pour la lecture d'un fichier texte. Le fichier est créé mais lorsque je donne le chemin d'accées fopen me renvoie la valeur N comment inserer des données dans un exe [ par vdox05 ] Bonjour,J' aimerais inserer les données d' un fichier image à l' interieur d' un executable.En fait il faudrait qu' il y ait deux fichiers à l' interi Petit probleme de code en C sur Linux !! [ par UncleShu ] Je voudrais créer un fichier dans le réperoire personnel d'un utilisateur mais mon code ne marche pas !!#include #include #include #define DIR $HOM écriture dans un fichier [ par coockiesch ] Bonjour, je créé un petit exe qui doit écrire dans un fichier avec le code suivant : //filename est le chemin d'accèsFileStream *fs = new FileStream(f inserer une image dans un fichier word... [ par nebucad ] bonjour en premier lieu merci a vieuxLion et Gaëlle pour leur aide concernant mon probleme d'impression les deux ont marché...J'aimerai savoir s' il é Sauvegarde du rendu ds un fichier image [ par titeufxp ] Bonjour,J'aurai besoin d'aide pour sauvegarder le contenu de ma fenetre opengl ds un format image genre BMP ou JPG.J'arrive a faire un fichier image a Programmation d'un QCM [ par redpooka ] J'aurais besoin d'un peu d'aide de quelque morceaux de code, C++Faire un QCM où il lit les questions et les réponses sur un fichier txt.Si vous avez q convertir 3DS fichier en code source OpenGL [ par fabienGL ] Bonjour, je vous écris car j'aimerais que quelk1 me donne un logiciel, ou script (simple :-) ) pour "traduire" un fichier .max du logiciel 3D Studio M Thèmes XP [ par Nebula ] Salut !Je souhaiterais utiliser les thèmes xp avec mes applications, j'ai donc créé un fichier .manifest comme ci-dessous (trouvé sur la msdn, je sais


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,530 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales