CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

[C] fork dup2 et printf

SwordQuardo
SwordQuardo
Niveau 5
19 octobre 2013 à 18:45:30

Bonjour,

Je veux faire un programme qui fait la même chose que la comande cat, mais j'ai un problème.

le code: http://pastebin.com/ZvVtFPHm

les fonctions 'erreur' et 'afficher' sont décrites en haut en commentaire, et 'afficher' renvoie le nombre de caractère lu.

-> le problème est que tant que je ne redirige pas la sortie (avec ">") dans un fichier, ca marche, mais si je le fais, alors le printf se met n'importe où, et s'affiche plusieurs fois.

Quelqu'un peut m'aider svp?

godrik
godrik
Niveau 30
19 octobre 2013 à 23:07:22

je ne comprends pas pourquoi tu as besoin de fork pour ecrire cat. cat c'est basiquement lire des fichiers/flux dans l'ordre de la ligne de commande et les ecrire sur la sortie standard.

undrgrnd
undrgrnd
Niveau 9
19 octobre 2013 à 23:17:54

ça m'a également sauté aux yeux...

SwordQuardo
SwordQuardo
Niveau 5
20 octobre 2013 à 00:26:46

parce que dans l'énoncé, la fonction afficher quitte le programme s'il ne peut pas lire un fichier (elle s'occupe en même temps de vérifier si le fichier existe, on doit pas le vérifier nous-mêmes)

undrgrnd
undrgrnd
Niveau 9
20 octobre 2013 à 01:01:23

Sais-tu ce que fais un fork() ?

godrik
godrik
Niveau 30
20 octobre 2013 à 03:03:41

nan mais la gestion de > < | c'est le probleme du shell, pas du programme qui copie les trucs sur la sortie standard.

PocoIo
PocoIo
Niveau 10
20 octobre 2013 à 03:34:13

C'est peut-être juste un TP débile de fac ou un truc dans le genre.

SwordQuardo
SwordQuardo
Niveau 5
20 octobre 2013 à 10:56:03

c'est un tp de fac.
et on dois gérer nous même la redirection.

mais le problème que j'ai est le printf qui se met n'importe où...

Sous forums
  • Aide à l'achat Mac
  • Macintosh
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Steam Deck
  • Hardware
La vidéo du moment