Question

J'ai un projet pour ma classe Structures de données, ce qui est un compresseur de fichiers qui fonctionne en utilisant des arbres binaires et d'autres choses. Nous sommes tenus de « zip » et « unzip » un fichier donné en suivant les instructions suivantes dans la ligne de commande:

Pour la compression: compressor.exe -zip file.whatever

Pour décompresser: compressor.exe -unzip file.zip

Nous programmons C ++ . J'utilise le Code :: Blocks IDE et compiler en utilisant GCC dans Windows.

Ma question est: Comment mettre en œuvre même que ?? !! Comment pouvez-vous faire vos .exe reçoivent ces paramètres en ligne de commande, puis les exécuter la façon dont vous voulez

En outre, quoi que ce soit d'avoir à l'esprit spécial si je veux que la mise en œuvre de compiler sous Linux?

Merci pour votre aide

Était-ce utile?

La solution 3

Lo Logre, je Götz it !!

J'ai maintenant une compréhension de base sur la façon d'utiliser les argc et argv [] paramètres sur la principale () fonction (I < em> toujours se demandaient ce qu'ils étaient bons pour ...). Par exemple, si je mets dans la ligne de commande:

compressor.exe -unzip file.zip

Alors:

  • argc initialise à '3' (nombre d'arguments en ligne)
  • argv [0] == "compressor.exe" (nom de l'application.)
  • argv [1] == "-unzip"
  • argv [2] == "file.zip"

Greg (non 'Creg', désolé = P) et Bemrose, merci les gars pour votre aide !! ^^

Autres conseils

Vous pouvez regarder dans votre texte de programmation pour la signature de la fonction main, le point d'entrée de votre programme. C'est là que vous serez en mesure de tirer dans les paramètres de ligne de commande.

Je ne veux pas être plus détaillé que parce que c'est apparemment un point clé de la mission, et si je me trouve travailler avec vous, je vais vous attendre à être en mesure de comprendre ce genre de choses sur sur votre propre une fois que vous avez reçu un coup de coude approprié. :)

Bonne chance!

De mémoire, l'unité UNIX Specification / POSIX définit getopt en unistd.h pour gérer l'analyse syntaxique des arguments pour vous. Bien que ce soit une fonction C, elle doit aussi travailler en C ++.

a cette en plus getopt_long ( en getopt.h) pour soutenir --style étendu de GNU.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top