" error: stray â\150â in program " ????

Dieses Thema im Forum "C/C++" wurde erstellt von Ticha, 26.12.2006.

  1. Ticha

    Ticha Linux Missionar

    Dabei seit:
    21.07.2006
    Beiträge:
    814
    Zustimmungen:
    0
    Kann jmd mit diesem error etwas anfangen? Ich wollte mir das Server-Client beispiel aus Galileo books mla anschauen... und dabei habe ich dann diese fehlermeldung bekommen. Doch in der besagten zeile ist alles in Ordnung. Immerhin ist es auch der Original quelltext von GalliBooks.

    hier ist der quellcode

    Code:
    /* server.c */
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    #include <fcntl.h>
    #include <errno.h>
    #include <time.h>
    #ifdef _WIN32
    /* Headerfiles für Windows */
    #include <winsock.h>
    #include <io.h>
    #else
    /* Headerfiles für UNIX/Linux */
    #include <sys/types.h>
    #include <sys/socket.h>
    #include <netinet/in.h>
    #include <netdb.h>
    #include <arpa/inet.h>
    #include <unistd.h>
    #endif
    /* Portnummer */
    #define PORT 1234
    /* Puffer für eingehende Nachrichten */
    #define RCVBUFSIZE 1024
    #ifdef _WIN32
       static void echo(SOCKET);
    #else
       static void echo( int );
    #endif
    static void error_exit(char *errorMessage);
    /* Funktion gibt Daten vom Client auf dem stdout aus,
     * welche dieser mit der Kommandozeile übergibt */
    #ifdef _WIN32
    static void echo(SOCKET client_socket)
    #else
    static void echo(int client_socket)
    #endif
    {
        char echo_buffer[RCVBUFSIZE];
        int recv_size;
        time_t zeit;
        if((recv_size =
                recv(client_socket, echo_buffer, RCVBUFSIZE,0)) < 0)
            error_exit("Fehler bei recv()");
        echo_buffer[recv_size] = '\0';
        time(&zeit);
        printf("Nachrichten vom Client : %s \t%s",
                echo_buffer, ctime(&zeit));
    }
    /* Funktion gibt aufgetretenen Fehler aus und
     * beendet die Anwendung */
    static void error_exit(char *error_message) {
    #ifdef _WIN32
        fprintf(stderr,"%s: %d\n", error_message, WSAGetLastError());
    #else
        fprintf(stderr, "%s: %s\n", error_message, strerror(errno));
    #endif
        exit(EXIT_FAILURE);
    }
    int main( int argc, char **argv) {
        struct sockaddr_in server, client;
    #ifdef _WIN32
        SOCKET sock, fd;
    #else
        int sock, fd;
    #endif
        int len;
    #ifdef _WIN32
        /* Initialisiere TCP für Windows ("winsock") */
        WORD wVersionRequested;
        WSADATA wsaData;
        wVersionRequested = MAKEWORD (1, 1);
        if (WSAStartup (wVersionRequested, &wsaData) != 0)
            error_exit( "Fehler beim Initialisieren von Winsock");
        else
            printf("Winsock initialisiert\n");
    #endif
        /* Erzeuge das Socket */
        sock = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP);
        if (sock < 0)
            error_exit("Fehler beim Anlegen eines Socket");
        /* Erzeuge die Socketadresse des Servers */
        memset( &server, 0, sizeof (server));
        /* IPv4-Verbindung */
        server.sin_family = AF_INET;
        /* INADDR_ANY Jede IP-Adresse annehmen */
        server.sin_addr.s_addr = htonl(INADDR_ANY);
        /* Portnummer */
        server.sin_port = htons(PORT);
        /* Erzeuge die Bindung an die Serveradresse
         * (genauer an einen bestimmten Port) */
        if(bind(sock,(struct sockaddr*)&server, sizeof( server)) < 0)
            error_exit("Kann das Socket nicht binden ");
        /* Teile dem Socket mit, dass Verbindungswünsche
         * von Clients entgegengenommen werden */
      [COLOR="Red"]  if(listen(sock, 5) == –1 )
     [/COLOR]        error_exit("Fehler bei listen");
        printf("Server bereit – wartet auf Anfragen ...\n");
        /* Bearbeite die Verbindungswünsche von Clients
         * in einer Endlosschleife
         * Der Aufruf von accept() blockiert solange,
         * bis ein Client Verbindung aufnimmt */
        for (;;) {
            len = sizeof(client);
            fd = accept(sock, (struct sockaddr*)&client, &len);
            if (fd < 0)
                error_exit("Fehler bei accept");
            printf("Bearbeite Client mit der Adresse: %s\n",
               inet_ntoa(client.sin_addr));
            /* Daten vom Client auf dem Bildschirm ausgeben */
            echo( fd );
            /* Schließe die Verbindung */ 
    #ifdef _WIN32
            closesocket(fd);
    #else
            close(fd);
    #endif
        }
        return EXIT_SUCCESS;
    }
    in der besagten zeile habe ich rot unterstrichen.

    vlt könnt ihr ja damit etwas anfangen :(
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. fed

    fed Jungspund

    Dabei seit:
    19.07.2006
    Beiträge:
    10
    Zustimmungen:
    0
    Hi!

    also ich hatte eine Fehlermedung (hörte sich ähnlich an) manchmal wenn ich umlaute im code hatte... aber nur über eine bestimmte ssh-verbindung im falschen Zeichensatz... villeicht hilft's ja weiter ;)

    mfg
    Frederic
     
  4. Ticha

    Ticha Linux Missionar

    Dabei seit:
    21.07.2006
    Beiträge:
    814
    Zustimmungen:
    0
    hmm... daran könnte es liegen. ich hab nämlich die Sachen 1:1 ausm I-net kopiert und per SSh die C Datei erstellt.

    Habe dann von der CD ausm Buch die Original Datei genommen, welche dann auch ohne probleme funktioniert. Vielleicht liegt es wirklich an der SSH connection :think:

    Danke sehr :)
     
Thema:

" error: stray â\150â in program " ????

Die Seite wird geladen...

" error: stray â\150â in program " ???? - Ähnliche Themen

  1. postfix - fputs-error

    postfix - fputs-error: Ich hoffe, dass sich wer von euch mit postfix bzw. der Fehlermeldung auskennt. Ich habe nach dem Youtube-Video postfix eingerichtet: [MEDIA] Nun...
  2. journal commit I/O error auf SSD

    journal commit I/O error auf SSD: Hallo zusammen Habe meiner "Sun Ultra 45" (SPARC System) eine 64GB-SSD eingebaut, und dort das OS (Debian 7) installiert. In unregelmässigen...
  3. Kein Sound im Spiel - OpenAL error

    Kein Sound im Spiel - OpenAL error: Ich hab in einem Spiel leider keinen Sound. In der Konsole kommt in einer Endlosschleife immer diese Meldung: OpenAL error: 40964 (Audio_Tick...
  4. syntax error near unexpected token `&'

    syntax error near unexpected token `&': Hallo Ich habe ein Scrip angepasst bzw. erweiter und habe nun an einer Stelle ein Problem. Vor der erweiterung ist es einwandfrei...
  5. Update error für OpenSuse 12.3 für "libsolv-tools-0.3.2-2.14.1"

    Update error für OpenSuse 12.3 für "libsolv-tools-0.3.2-2.14.1": Hallo, ich kann mein OpenSuse 12.3 nicht mehr richtig updaten. beim versuch bekomme ich folgende Meldung: ( 1/23) Installing:...