Reculer un pointeur ?

Reculer un pointeur ? - C - Programmation

Marsh Posté le 02-01-2005 à 17:09:21    

Salut,
 
G un pointeur qui pointe a la fin d'une ligne de mon fichier texte!
Et j'aimerai faire aller ce pointeur en arriere pour supprimer la ligne.
Dans mon index g vu ungetc, mais je n'arrive pas a l'utiliser.
 
help, svp

Reply

Marsh Posté le 02-01-2005 à 17:09:21   

Reply

Marsh Posté le 02-01-2005 à 17:20:59    

Daniel59 a écrit :

G un pointeur qui pointe a la fin d'une ligne de mon fichier texte!
Et j'aimerai faire aller ce pointeur en arriere pour supprimer la ligne.
Dans mon index g vu ungetc, mais je n'arrive pas a l'utiliser.


ungetc() n'a rien à voir.
 
On peut faire des choses assez dangereuses avec des modes d'ouvertures bizarrzs ("r+", "w+" etc.) et fseek(), mais je ne le conseille pas. Le plus sûr est de recopier le fichier en filtrant ce qui ne doit pas être copié.
 
Grace à un bon usage de rename() et delete(), ça permet aussi d'annuler la modif...
 


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
Reply

Marsh Posté le 02-01-2005 à 17:28:38    

si tu avances quand je recule ...

Reply

Marsh Posté le 02-01-2005 à 17:30:52    

Oué c vrai.
2 questions
Comment on fé pour remettre un pointer à zero?(un reset koi)
Et comment on fé pour creer un fichier?(si on pe?)
merci

Reply

Marsh Posté le 02-01-2005 à 17:58:26    

Daniel59 a écrit :

Oué c vrai.
2 questions
Comment on fé pour remettre un pointer à zero?(un reset koi)


Voir la doc de fseek()

Citation :

Et comment on fé pour creer un fichier?(si on pe?)


fopen() avec "w".


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
Reply

Marsh Posté le 03-01-2005 à 18:10:45    

Si tu ne veux pas utiliser stdio, tu as aussi:
 
int open(const char *pathname, int flags);
int open(const char *pathname, int flags, mode_t mode);
int creat(const char *pathname, mode_t mode);
 

Reply

Marsh Posté le 03-01-2005 à 18:11:48    

rolphin a écrit :

Si tu ne veux pas utiliser stdio, tu as aussi:
 
int open(const char *pathname, int flags);
int open(const char *pathname, int flags, mode_t mode);
int creat(const char *pathname, mode_t mode);


Mais qui ne sont pas standard C.
 


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
Reply

Marsh Posté le 04-01-2005 à 03:49:28    

nraynaud a écrit :

si tu avances quand je recule ...


facile tout ça. j'y pensais aussi  [:jagstang]

Reply

Marsh Posté le 04-01-2005 à 07:15:48    

nraynaud a écrit :

si tu avances quand je recule ...


 
ou comme le disait Corneille, "le désir s'accroit quand l'effet se recule".

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed