FILE et Structure en C++ - C++ - Programmation
Marsh Posté le 11-01-2011 à 12:19:53
Euh, tu es sur que c'est du C++, ce que tu fais?
Parce que si tu fais du C++ et pas du C, je vois pas ce qu'un FILE vient faire ici.
En C++, pour accéder à un fichier, à la base, tu as les classes ifstream, ofstream et fstream.
A+,
Marsh Posté le 11-01-2011 à 13:31:50
gilou a écrit : Euh, tu es sur que c'est du C++, ce que tu fais? |
je travaille avec Dev C++ compilateur de C++
j'espere que vius avez copmris mon probleme
aidez moi svp
Marsh Posté le 11-01-2011 à 13:40:08
gilou a très bien compris ton problème justement : en C++, je ne vois pas bien ce que tu t'embêtes avec des FILE*
Et de toute façon, ce n'est qu'une partie de ton problème. Si je comprends bien, tu veux créer (ou lire ?) un fichier ayant une structure similaire à ta struct, et dans ce cas-là, ben, faut écrire les données une à une dans le fichier. Pour la lecture, c'est à peu près pareil.
Marsh Posté le 11-01-2011 à 14:34:06
Elmoricq a écrit : gilou a très bien compris ton problème justement : en C++, je ne vois pas bien ce que tu t'embêtes avec des FILE* |
moi je veux:
-lire un fichier //j'ai reussi à faire
-écrire une structure qu'elle aura comme des champs les types de mes données sur mon file exp:
nb de lignes,nom de fichier ,les caractères constituant mes ligne ....
(mon fichier en faite c'est un arbre composé des portes logique et leurs entrées dans chaque ligne)
mon souci est comment puisse -je faire la relation entre mon fichier (FILE *f) et la structure créee
merci bien
Marsh Posté le 11-01-2011 à 15:54:31
Et moi, mon souci, c'est que tu as posté ceci dans la catégorie C++ du forum.
En C il faudra que tu fasses tout à la main:
Tu peux inclure la structure FILE *f comme élément de la structure monfile, et il faudra que tu te définisses des fonctions de lecture et écriture (et d'ouverture fermeture) prenant pour paramètre une structure monfile, et qui mettront à jour a chaque opération les champs de cette structure et feront appel en interne aux fonction sur un FILE.
Mais à aucun moment tu ne pourras magiquement transformer un FILE en une structure perso que tu as défini.
A+,
Marsh Posté le 11-01-2011 à 16:25:30
gilou a écrit : Et moi, mon souci, c'est que tu as posté ceci dans la catégorie C++ du forum. |
mon fichier en faite c'est un arbre composé des portes logique et leurs entrées dans chaque ligne
moi je dois spesifier dans ma structure le nom de l'arbre,le nobre de portes et le nombre de tout les entreées
est ce que c'est possible
comme résultat:
- je dois traiter chaque porte et extraire les entrée
tous ça pour extraire les coupes minimale de mon arbre
Marsh Posté le 11-01-2011 à 16:45:25
On va reessayer:
1/ le (pseudo-)code tu presentes est plus du C que du C++
2/ tu n'arrives meme pas a expliquer ton probleme correctement. Quel est le format de ton fichier:
2.a/ texte? Il faudrait alors une description plus detaillee. Il va te falloir ecrire un parseur. lex et yacc peuvent aider.
2.b/ binaire? Il faudrait alors une description plus detaillee. Il va te falloir ecrire un parseur. lex et yacc peuvent aider, mais c'est une facon un peu non conventionnelle de les utiliser.
2.c/ dump de memoire. Il faudrait alors une description plus detaillee. Et tu as des gros risques d'absence de portabilite. ...
Marsh Posté le 11-01-2011 à 20:31:12
Mes données sont dans un fichier txt qui représentent un Arbre de la manière suivante avec des portes logiques (OU par p*1,ET par p+0) et leurs entrées qui seront soient 'autres portes ou des événements simple ou leurs complément (e+1 ou e-1) c'est des appellations
Exemple :
p+0 e+1 e+2 e+3 p*1 p*2
p*1 p+4 p*5
p*2 p+6 p+7
p*3 p+8 p*9
p+4 e+16 e+18 g+10
p*5 e+4 e+5e+6 e+10 e+12 e+14
p+7 e+7 e+8 e+9 e+11 e+13 e+15
p+8 e+17 e+19 g+13
p*9 e+4 e+5
p+10 e+4 e+5 e+6 e+10 e+12 e+14
p*11 e-4 e-5 e-6
mon but est de faire le traitement et d'extraire les coupes minimales selon des algorithmes bien défini
j'ai bien reussi à la lecture mais j'arrive pas à le traiter comme j'ai déjà dis en haut
merci d'avance pour m'aider ou orienter ............
Marsh Posté le 12-01-2011 à 16:12:04
sdfsam1 a écrit : |
Comme l'a dit Un Programmeur, regarde du côté de lex et yacc pour lire ton fichier.
Marsh Posté le 12-01-2011 à 17:31:24
En C++, boost spirit http://boost-spirit.com/home/
Enfin bon, j'attrape mal à la tête rien qu'en regardant le premier exemple simple de loin http://boost-spirit.com/home/artic [...] spirit-qi/
Marsh Posté le 12-01-2011 à 22:01:20
SquiZZ a écrit : En C++, boost spirit http://boost-spirit.com/home/ |
j'ai pas bien compris ceux vous avez donné
moi je travaill sous DEV C++ compilateur de C
Marsh Posté le 13-01-2011 à 09:14:30
Je te suggere de lire et d'appliquer http://forum.hardware.fr/hfr/Progr [...] 0261_1.htm
Marsh Posté le 13-01-2011 à 09:27:45
Un Programmeur a écrit : Je te suggere de lire et d'appliquer http://forum.hardware.fr/hfr/Progr [...] 0261_1.htm |
moi je veux utiliser la structure pour définir les la structure de mon fichier
mon fichier est constitué des lignes dans chaque ligne il y a des informations
par example la premier ligne nous donne le nombre de ligne dans mon file
la seconde la longeure de la ligne
pui les lignes qui suivent sont mes données à traiter (exp un arbre qui est constitu des portes logique comme j'ai deja expliqué)
merci de me donner la structure ???
merci d'avance.........
Marsh Posté le 11-01-2011 à 10:51:05
Bonjour,
j'ai fait un code en Dev C++ qui fait la lecture d'un FILE mais mon probleme est comment puisse-je faire son traitement afin d'extraire les données lues?
je veux que mon file aura un structure bien definie exemple:
<code><gras>typedef struct monfile
{
int nb;// nombre de ligne
char nomfile[20];// nom fichier
char ch;// caractére qui constitue les ligne
.........
}</gras>
FILE *f; // pointreur ver un FILE</code>
mon souci est comment faire pour que mon FILE *f soit de la structure monfile
je pense c'est comme ça
<gras>monfile *f;</gras>
mais ça donne un conflet car f est declaré de type FILE donc ou est l'erreur
SVP AIDEZ MOI???
Bonne journée