Hatte vor kurzem auf der Arbeit das Problem dass ich in einem Programm Kommandozeilenparameter einlesen musste - allerdings hatte ich keine lust auf das übliche if (!strcmp(argv, argz[d])) { printf("falsche option xyz"); } ...
Deswegen hab ich mich mal ein bisschen umgesehen und die nette getopt() funktion gefunden - allerdings nur auf Unix. Deswegen habe ich einen kleinen Artikel geschrieben wie man sich das ding auch auf Windows holt:
http://tutorial.proggen.org/doku.php?id ... pt-windows
Dazugepackt habe ich noch eine kleine Klasse, die einem die Argumentverwaltung ganz abnimmt. So einfach kann argumentverwaltung sein:
Code: Alles auswählen
#include <iostream>
 
#include "program_options.h"
 
int main(int argc, char* argv[])
{
    ProgramOptions op(argc, argv);
    if (!op)
    {
        std::cerr<<"Invalid usage!\n";
        return 1;
    }
 
    std::cout<<"We are treating the file \""<<op.filename<<"\"\n";
    std::cout<<"A is on: "<<op.a_flag<<'\n'; 
    std::cout<<"Some option is \""<<op.some_option<<"\"\n";
    std::cout<<"Another option is \""<<op.another_option<<"\"\n"; 
    return 0;
}mfg, fat-lobyte



 aber wenigstens keine Abhängigkeiten erzeugt.
 aber wenigstens keine Abhängigkeiten erzeugt.


