Fehler wenn er auf Link gehen soll!



  • Hallo also ich habe folgendes Problem:
    Ich habe ein Programm geschrieben wo man zwei Eingaben macht dann öffnet das Programm eine Internetseite mit den zwei eingetragen nen Links.
    Aber beim Kompilieren kommt der Fehler:

    error: invaild operants of types "const char[57]" and char[20] to binary óperator <<"

    Die Zeile die das betrifft ist so:

    ShellExecute(NULL,"open","http://www.meineseitehalt.de//ripp4//eintrag.php?"<<a<<"%"<<b<<"",NULL,NULL,SW_NORMAL);

    Wisst ihr wo der Fehler ist?



  • Hallo,

    "http://www.meineseitehalt.de//ripp4//eintrag.php?"<<a<<"%"<<b<<""
    

    Keine Ahnung, was du mit dieser Zeile bezwecken willst. Legal ist sie auf jeden Fall nicht. Wie wäre es stattdessen mit

    ostringstream oss; // benötigt <sstream>
    oss << "http://www.meineseitehalt.de//ripp4//eintrag.php?"<<a<<"%"<<b;
    ShellExecute(NULL,"open",oss.str().c_str(),NULL,NULL,SW_NORMAL);
    

    Schau dir am besten mal die Funktionsweise von den std::stringstreams an 🙂

    Gruß, Caipi



  • Hallo

    du kannst einen String-Literal nicht durch + oder << andere C-Strings anhängen.

    du kannst stringstream verwenden :

    #include <sstream>
    ...
    std::stringstream filename;
    filename <<"http://www.meineseitehalt.de//ripp4//eintrag.php?"<<a<<"%"<<b<<"";
    ShellExecute(NULL,"open",filename.str().c_str(),NULL,NULL,SW_NORMAL);
    

    bis bald
    akari


Anmelden zum Antworten