const char und char



  • Hi,
    ich bin dabei mit Sockets zu programmieren.
    Ich hänge jetzt aber bei einer Funktion

    int configure(char adressfamily,int port,const char ip_adresse)
            {
            memset(&addr,0,sizeof(SOCKADDR_IN)); // zuerst alles auf 0 setzten
            addr.sin_family=adressfamily;
            addr.sin_port=htons(port);
            addr.sin_addr.s_addr=inet_addr(ip_adresse);
            return 1;
            }
    

    Wenn ich es so copilieren will kommen zwei fehler:

    [C++ Error] console_qc.h(51): E2034 Cannot convert 'int' to 'const char *'
    [C++ Error] console_qc.h(51): E2342 Type mismatch in parameter 'cp' (wanted 'const char *', got 'char')
    

    Wenn ich aber den Code so ändere:

    addr.sin_addr.s_addr=inet_addr("127.0.0.0");
    

    Also einen genauen string angebe gehts.

    Nun meine Frage wieso geht das nicht wwenn ich den Parameter dort einsetzen will????

    MFG
    Ace



  • Du benötigst "const char* ip_adresse" statt "const char ip_adresse", denn du übergibst einen Pointer zu einem C-String, nicht ein einzelnes Zeichen 😉



  • Geht.
    Stimmt klingt logisch

    THX


Anmelden zum Antworten