Anzeige:
Ergebnis 1 bis 2 von 2

Thema: c++ Programm gibt fehler

  1. #1
    Registrierter Benutzer
    Registriert seit
    06.06.2004
    Beiträge
    76

    c++ Programm gibt fehler

    Habe eine cgi anwendung geschrieben wenn ich diese bekomme ich die 'Fehlermeldung:

    Code:
    neo@neo:~/Desktop/tuxist.de/tuxcms$ ./index.cgi
    Content-Type:text/html
    
    
    <html>
    <head>
    <title></title>
    </head>
    <select name="Formselect1"<option>Forminput</option> <option>Forminput1</option> <option>Forminput2</option>method="GET">
    terminate called after throwing an instance of 'std::logic_error'
      what():  basic_string::_S_construct NULL not valid
    Aborted
    index.cpp
    Code:
    #include <iostream>
    #include "index.h"
    #include <dlfcn.h>
    #include <tuxcms/css.h>
    #include <tuxcms/libhtml++.h>
    #include <string>
    
    using namespace std;
    
    int main()
    {
    string sitename;
    cout << "Content-Type:text/html\n\n" << endl
         << "<html>" << endl
         << "<head>" << endl
         << "<title>" << sitename << "</title>" << endl
         << "</head>" << endl;
    
    
    formselect("Formselect1", "[F]Forminput[/F] [F]Forminput1[/F] [F]Forminput2[/F]", "GET");
    anfrage();
    libcssread();
    cout << "<body>" << endl
         << "<h1><em>" << endl
         << "Im Aufbau" << endl
         << "</em></h1>" << endl
         << "</body>" << endl
         << "</html>";
    }
    cgi.h
    Code:
    #include <iostream>
    #include <string>
    #include <fstream>
    #include <stdio.h>
    #include <cstdlib>
    #include <vector>
    
    using namespace std;
    
    void anfrage()
    {
    string eingabe = getenv("QUERY_STRING");
    cout << eingabe << endl;
    }
    Hoddel aus Überzeugung

  2. #2
    Registrierter Benutzer
    Registriert seit
    23.05.2004
    Beiträge
    592
    Die Meldung zeigt den Fehler eigentlich schon auf: Du initialisierst einen std::string mit einem Null-Zeiger. Das ist verboten. Du musst bedenken, dass getenv 0 zurückliefern kann.

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •