Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    compilare un listato in c

    Salve a tutti,vi dico subito che uso linux da 2 giorni..
    cmq il problema è questo,io ho un listato in c,vado nella finestra del terminale e scrivo il seguente comando gcc -o nome listato.c
    l'operazione va a buon fine e nella cartella trovo il file "eseguibile" che si chiama nome. Qui direte be è tutto apposto no?e invece,il problema è che il file non si apre,però nn da errori..quindi,
    a voi...
    grazie!

  2. #2

    Re: compilare un listato in c

    Originariamente inviato da bic90
    Salve a tutti,vi dico subito che uso linux da 2 giorni..
    cmq il problema è questo,io ho un listato in c,vado nella finestra del terminale e scrivo il seguente comando gcc -o nome listato.c
    l'operazione va a buon fine e nella cartella trovo il file "eseguibile" che si chiama nome. Qui direte be è tutto apposto no?e invece,il problema è che il file non si apre,però nn da errori..quindi,
    a voi...
    grazie!
    come lo apri?

    Devi dare da terminale (nella cartella dove c'è il file)

    ./eseguibile
    "L'utopia è come l'orizzonte: cammino due passi, e si allontana di due passi. Cammino di dieci passi, e si allontana di dieci passi. E allora, a cosa serve l'utopia? A questo: serve per continuare a camminare."
    Eduardo Galeano
    Il mio sito
    "if you want people to RTFM, make a better FM!"

  3. #3
    ho fatto così e da questa risposta
    "usage: client hostname" se volete vi do in allegato i 2 listati che devo eseguire così mi dite se da anche a voi lo stesso errore

  4. #4
    Originariamente inviato da bic90
    ho fatto così e da questa risposta
    "usage: client hostname" se volete vi do in allegato i 2 listati che devo eseguire così mi dite se da anche a voi lo stesso errore
    non sono pratico, ma a qanto pare dall'errore, devi dare nome comando hostname dell'utente
    "L'utopia è come l'orizzonte: cammino due passi, e si allontana di due passi. Cammino di dieci passi, e si allontana di dieci passi. E allora, a cosa serve l'utopia? A questo: serve per continuare a camminare."
    Eduardo Galeano
    Il mio sito
    "if you want people to RTFM, make a better FM!"

  5. #5
    e cosa vuol dire??

  6. #6
    Originariamente inviato da bic90
    e cosa vuol dire??
    il nome del computer (per esempio ubuntu, o il nome che gli hai dato tu, che poi altro non è che quello che ti compare nel terminale appena aperto. comunque posta il listato, magari qualcuno che è un po più pratico ti può aiutare
    "L'utopia è come l'orizzonte: cammino due passi, e si allontana di due passi. Cammino di dieci passi, e si allontana di dieci passi. E allora, a cosa serve l'utopia? A questo: serve per continuare a camminare."
    Eduardo Galeano
    Il mio sito
    "if you want people to RTFM, make a better FM!"

  7. #7
    [PHP]
    /*
    ** client.c -- a stream socket client demo
    */
    #include <stdio.h>
    #include <stdlib.h>
    #include <unistd.h>
    #include <errno.h>
    #include <string.h>
    #include <netdb.h>
    #include <sys/types.h>
    #include <netinet/in.h>
    #include <sys/socket.h>
    #define PORT 3490 // the port client will be connecting to
    #define MAXDATASIZE 100 // max number of bytes we can get at once
    int main(int argc, char *argv[])
    {
    int sockfd, numbytes;
    char buf[MAXDATASIZE];
    struct hostent *he;
    struct sockaddr_in their_addr; // connector's address information
    if (argc != 2) {
    fprintf(stderr,"usage: client hostname\n");
    exit(1);
    }
    if ((he=gethostbyname(argv[1])) == NULL) { // get the host info
    herror("gethostbyname");
    exit(1);
    }
    if ((sockfd = socket(PF_INET, SOCK_STREAM, 0)) == -1) {
    perror("socket");
    exit(1);
    }
    their_addr.sin_family = AF_INET; // host byte order
    their_addr.sin_port = htons(PORT); // short, network byte order
    their_addr.sin_addr = *((struct in_addr *)he->h_addr);
    memset(their_addr.sin_zero, '\0', sizeof their_addr.sin_zero);
    if (connect(sockfd, (struct sockaddr *)&their_addr,
    sizeof their_addr) == -1) {
    perror("connect");
    exit(1);
    }
    if ((numbytes=recv(sockfd, buf, MAXDATASIZE-1, 0)) == -1) {
    perror("recv");
    exit(1);
    }
    buf[numbytes] = '\0';
    printf("Received: %s",buf);
    close(sockfd);
    return 0;
    }
    [\PHP]

  8. #8
    Come ha detto psykopear devi passare al programma il parametro corretto, questo è l'hostname (nome pc) del client.
    Io per esempio ecco cosa ho ottenuto dando il seguente comando (ricsvi03 è il mio PC - Ubuntu 7.04):
    ./prova ricsvi03
    connect: Connection refused

    Ed è corretto, perchè sulla porta 3490 non c'è nulla sul mio PC.
    Scusa la domanda, ma sai come funziona sto programma? Perchè dalle tue domande mi sembra che non hai neanche guardato il codice.
    Cmq questo thread non centra nulla con Linux, dovresti provare nel forum Programmazione.
    It's just another bombtrack...
    Ogni can mena la coa, ogni coion vö gi' la soa!

  9. #9
    è un esercizio di scuola, e siccome ho delle difficoltà,ho chiesto qui che c'è della gente bravissima, comunque il codice lo so quasi a memoria!!e che con linux non so fare niente,sto imparando un po' alla volta,(da solo)..comunque grazie intanto..

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.