Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Antigravity A1: drone futuristico per riprese a 360° in 8K con qualche lacuna da colmare
Antigravity A1: drone futuristico per riprese a 360° in 8K con qualche lacuna da colmare
Abbiamo messo alla prova il drone Antigravity A1 capace di riprese in 8K a 360° che permette un reframe in post-produzione ad eliche ferme. Il concetto è molto valido, permette al pilota di concentrarsi sul volo e le manovre in tutta sicurezza e decidere con tutta tranquillità come gestire le riprese. La qualità dei video, tuttavia, ha bisogno di uno step in più per essere competitiva
Sony Alpha 7 V, anteprima e novità della nuova 30fps, che tende la mano anche ai creator
Sony Alpha 7 V, anteprima e novità della nuova 30fps, che tende la mano anche ai creator
Dopo oltre 4 anni si rinnova la serie Sony Alpha 7 con la quinta generazione, che porta in dote veramente tante novità a partire dai 30fps e dal nuovo sensore partially stacked da 33Mpixel. L'abbiamo provata per un breve periodo, ecco come è andata dopo averla messa alle strette.
realme GT 8 Pro Dream Edition: prestazioni da flagship e anima racing da F1
realme GT 8 Pro Dream Edition: prestazioni da flagship e anima racing da F1
realme e Aston Martin Aramco F1 Team si sono (ri)unite dando alla vita un flagship con chip Snapdragon 8 Elite Gen 5 e design esclusivo ispirato alle monoposto di Formula 1. La Dream Edition introduce la nuova colorazione Lime Essence abbinata al tradizionale Aston Martin Racing Green, decorazioni intercambiabili personalizzate e una confezione a tema F1, intorno a uno smartphone dall'ottima dotazione tecnica con batteria da 7000mAh ricaricabile a 120W e isola fotografica intercambiabile
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 10-03-2006, 19:49   #1
PacManZ
Senior Member
 
L'Avatar di PacManZ
 
Iscritto dal: Jan 2002
Città: Oggiona
Messaggi: 755
programmino scolastico client server



compilo con devc++, ma nella riga

struct sockaddr_in server;


il compilatore mi da questo errore "storage size of 'server' isn't known"
che diavolo significa?
PacManZ è offline   Rispondi citando il messaggio o parte di esso
Old 10-03-2006, 20:42   #2
PacManZ
Senior Member
 
L'Avatar di PacManZ
 
Iscritto dal: Jan 2002
Città: Oggiona
Messaggi: 755
non avevo la libreria netinet/in.h ...
ora pero' mi da un sacco di errori di linker...
provo a postare il codice

Codice:
#include <stdio.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <string.h>
#include <netinet/in.h>
#define PORT 4000

void main(int argc,char *argv[])
    {
    struct sockaddr_in server;
    int sd,errore,i;
    char c;
    FILE *punt;
    server.sin_family=AF_INET;
    server.sin_port=htons((u_short)PORT);
    server.sin_addr.s_addr=inet_addr(argv[1]);
    sd=socket(AF_INET,SOCK_STREAM,0);
    errore=connect(sd,(struct sockaddr*)&server,sizeof(server));
    if (errore)
        printf("Connessione non avvenuta.");
    else
        {
        i=0;
        while (argv[2][i]!='\0')
            {
            i++;
            send(sd,&c,i,0);
            }
        c='*';
        send(sd,&c,1,0);
        punt=fopen(argv[3],"w");
        i=recv(sd,&c,1,0);
        while(i>0)
            {
            fprintf(punt, "%c",c);
            c=recv(sd,&c,1,0);
            }
        fclose(punt);
        close(sd);
        }
    }
PacManZ è offline   Rispondi citando il messaggio o parte di esso
Old 10-03-2006, 21:15   #3
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
eeeeehhhhhhh??????? ma che hai incluso?? ma scusa, includi semplicemente winsock.h e poi linka a ws2_32.lib ... sei su Windows mica su Linux...
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 10-03-2006, 21:30   #4
PacManZ
Senior Member
 
L'Avatar di PacManZ
 
Iscritto dal: Jan 2002
Città: Oggiona
Messaggi: 755
ah si?
io ho provato a scrivere il programma che il prof ha scritto alla lavagna
il prof e' bravo ed e' stato capace di farmi capire quasi tutto, ma non ci ha detto che il programma andasse sotto linux...
PacManZ è offline   Rispondi citando il messaggio o parte di esso
Old 10-03-2006, 21:52   #5
PacManZ
Senior Member
 
L'Avatar di PacManZ
 
Iscritto dal: Jan 2002
Città: Oggiona
Messaggi: 755
mi da gli errori piu' strani.. il linker.. le librerie boh...
PacManZ è offline   Rispondi citando il messaggio o parte di esso
Old 10-03-2006, 22:00   #6
wisher
Senior Member
 
L'Avatar di wisher
 
Iscritto dal: Aug 2005
Messaggi: 2755
devi passare in compilazione -l e la libreiria dll che ti hanno segnalato prima.
se ci dici con cosa compili possiamo esserti di maggiore aiuto
ciao
__________________
wisher è offline   Rispondi citando il messaggio o parte di esso
Old 10-03-2006, 22:08   #7
PacManZ
Senior Member
 
L'Avatar di PacManZ
 
Iscritto dal: Jan 2002
Città: Oggiona
Messaggi: 755
uso devc++ 4.9.9.2

ho provato a togliere un po di include e a mettere il winsock.h

Codice:
#include <stdio.h>
#include <winsock.h>
#define PORT 4000

void main(int argc,char *argv[])
    {
    struct sockaddr_in server;
    int sd,errore,i;
    char c;
    FILE *punt;
    server.sin_family=AF_INET;
    server.sin_port=htons((u_short)PORT);
    server.sin_addr.s_addr=inet_addr(argv[1]);
    sd=socket(AF_INET,SOCK_STREAM,0);
    errore=connect(sd,(struct sockaddr*)&server,sizeof(server));
    if (errore)
        printf("Connessione non avvenuta.");
    else
        {
        i=0;
        while (argv[2][i]!='\0')
            {
            i++;
            send(sd,&c,i,0);
            }
        c='*';
        send(sd,&c,1,0);
        punt=fopen(argv[3],"w");
        i=recv(sd,&c,1,0);
        while(i>0)
            {
            fprintf(punt, "%c",c);
            c=recv(sd,&c,1,0);
            }
        fclose(punt);
        close(sd);
        }
    }

come si fa a includere una libreria??
fino a oggi ho solo incluso file .h (quindi immagino solo headers)
PacManZ è offline   Rispondi citando il messaggio o parte di esso
Old 10-03-2006, 22:31   #8
vlacus
Member
 
L'Avatar di vlacus
 
Iscritto dal: May 2003
Messaggi: 118
passare a linux no?...
__________________
forum che tratta di calcolatrici grafiche in genere: consigli e aiuti www.helpcalculator.tk
vlacus è offline   Rispondi citando il messaggio o parte di esso
Old 10-03-2006, 22:37   #9
PacManZ
Senior Member
 
L'Avatar di PacManZ
 
Iscritto dal: Jan 2002
Città: Oggiona
Messaggi: 755
sto pensando di fare una partizione per linux, ma preferirei far girare il programmino anke su windows...
PacManZ è offline   Rispondi citando il messaggio o parte di esso
Old 10-03-2006, 22:38   #10
AbuJaffa
Senior Member
 
L'Avatar di AbuJaffa
 
Iscritto dal: Jan 2006
Città: Lassù
Messaggi: 2842
Anzitutto la gestione del winsock è leggermente diverso dalla programmazione di rete in linux. Prima di usare le funzioni di winsock, bisogna preliminarmente usare la seguente funzione che non fa altro che inizializzare la windows socket.

int winDLLstart(){
WORD wVersionRequested;
WSADATA wsaData;
int err;
wVersionRequested = MAKEWORD(2, 0);
err = WSAStartup(wVersionRequested, &wsaData);
return(err);
}

Come potrai notare, sono nient'altro che luride convenzioni che Microsoft ha imposto ai programmatori windows. La parte importante è la WSAStartup().

per linkare la libwsock32.a fai...Progetto-->opzioni del progetto-->Parametri -->aggiungi libreria-->libwsock32.a
__________________
Fa' che non turbi l'anima tua il triste spettacolo dell'ingiustizia umana; anch' essa, nell'economia divina, ha il suo valore. È sopra di essa che vedrai sorgere immancabilmente la giustizia di Dio.
HO CONCLUSO EGREGIAMENTE TRATTATIVE CON OLTRE 90 UTENTI!
ATTENZIONE: consiglio di evitare assolutamente trattative con l'utente Herant
AbuJaffa è offline   Rispondi citando il messaggio o parte di esso
Old 10-03-2006, 22:58   #11
PacManZ
Senior Member
 
L'Avatar di PacManZ
 
Iscritto dal: Jan 2002
Città: Oggiona
Messaggi: 755
ora sembra andare almeno la compilazione

ora provo a creare il programma server e faccio qualke esperimento

grazie 1000
PacManZ è offline   Rispondi citando il messaggio o parte di esso
Old 10-03-2006, 23:49   #12
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
mi sa che mi sono sbagliato: il nome dell'header dovrebbe essere winsock2.h (mi so perso un 2); winsock.h è una sua vecchia versione. per quello che devi fare tu non dovrebbe cambiare nulla, ma non si sa mai. comunque come altri ti hanno giustamente detto, la gestione dei socket tra Windows e Linux presenta differenze piccole e molto bastarde (su Linux un valore di ritorno nullo vuol dire una cosa e su Windows vuol dire l'opposto) percui ci devi andare di #ifdef, ma io preferirei lavorare come dice il tuo professore; se proprio non vuoi fare il dual boot (e ti capisco) installati VMWare Workstation (se non erro ne esiste una versione gratis).
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 11-03-2006, 10:29   #13
PacManZ
Senior Member
 
L'Avatar di PacManZ
 
Iscritto dal: Jan 2002
Città: Oggiona
Messaggi: 755
il server crasha dandomi un errore di segmentazione (accede a memoria non sua?)

Codice:
#include <stdio.h>
#include <winsock2.h>
#define PORT 4000
#define MAXC 15

void main(void)
    {
    int winDLLstart(){
    WORD wVersionRequested;
    WSADATA wsaData;
    int err;
    wVersionRequested = MAKEWORD(2, 0);
    err = WSAStartup(wVersionRequested, &wsaData);
    return(err);
    } 
    struct sockaddr_in server,client;
    int sd,new_sd,errore,i,j,client_len;
    char c,nomefile[100];
    FILE *punt;
    server.sin_family=AF_INET;
    server.sin_port=htons((u_short)PORT);
    server.sin_addr.s_addr=INADDR_ANY;
    sd=socket(AF_INET,SOCK_STREAM,0);
    bind(sd,(struct sockaddr*)&server,sizeof(server));
    listen(sd,MAXC);
    while(1)
        {
        new_sd=accept(sd,(struct sockaddr*)&client,&client_len);
        i=recv(new_sd,&c,1,0);
        j=0;
        while((i>0) && (c!='*'))
            {
            nomefile[j]=c;
            j++;
            i=recv(new_sd,&c,1,0);
            }
        nomefile[j]='\0';
        punt=fopen(nomefile, "r");
        fscanf(punt,"%c",&c);
        while(!feof(punt))
            {
            send(new_sd,&c,1,0);
            fscanf(punt,"%c",&c);
            }
        fclose(punt);
        close(new_sd);
        }
    }

sono anke disposto a fare il dual boot, ma dovrei svuotare un po' D: e fare un'altra partizione... e credo che faro' cosi'. Ke linux scarico pero' e che compilatore c/c++
PacManZ è offline   Rispondi citando il messaggio o parte di esso
Old 11-03-2006, 11:16   #14
VICIUS
Senior Member
 
L'Avatar di VICIUS
 
Iscritto dal: Oct 2001
Messaggi: 11471
Quote:
Originariamente inviato da PacManZ
sono anke disposto a fare il dual boot, ma dovrei svuotare un po' D: e fare un'altra partizione... e credo che faro' cosi'. Ke linux scarico pero' e che compilatore c/c++
Open SuSE è piuttosto facile da installare e gestire per un principiante. Per il compilatore su linux c'è gcc che va benissimo ed è gia incluso.

ciao
VICIUS è offline   Rispondi citando il messaggio o parte di esso
Old 11-03-2006, 11:17   #15
wisher
Senior Member
 
L'Avatar di wisher
 
Iscritto dal: Aug 2005
Messaggi: 2755
Quote:
Originariamente inviato da PacManZ
il server crasha dandomi un errore di segmentazione (accede a memoria non sua?)

Codice:
#include <stdio.h>
#include <winsock2.h>
#define PORT 4000
#define MAXC 15

void main(void)
    {
    int winDLLstart(){
    WORD wVersionRequested;
    WSADATA wsaData;
    int err;
    wVersionRequested = MAKEWORD(2, 0);
    err = WSAStartup(wVersionRequested, &wsaData);
    return(err);
    } 
    struct sockaddr_in server,client;
    int sd,new_sd,errore,i,j,client_len;
    char c,nomefile[100];
    FILE *punt;
    server.sin_family=AF_INET;
    server.sin_port=htons((u_short)PORT);
    server.sin_addr.s_addr=INADDR_ANY;
    sd=socket(AF_INET,SOCK_STREAM,0);
    bind(sd,(struct sockaddr*)&server,sizeof(server));
    listen(sd,MAXC);
    while(1)
        {
        new_sd=accept(sd,(struct sockaddr*)&client,&client_len);
        i=recv(new_sd,&c,1,0);
        j=0;
        while((i>0) && (c!='*'))
            {
            nomefile[j]=c;
            j++;
            i=recv(new_sd,&c,1,0);
            }
        nomefile[j]='\0';
        punt=fopen(nomefile, "r");
        fscanf(punt,"%c",&c);
        while(!feof(punt))
            {
            send(new_sd,&c,1,0);
            fscanf(punt,"%c",&c);
            }
        fclose(punt);
        close(new_sd);
        }
    }

sono anke disposto a fare il dual boot, ma dovrei svuotare un po' D: e fare un'altra partizione... e credo che faro' cosi'. Ke linux scarico pero' e che compilatore c/c++
x il momento potresti anche usare una distribuzione live (knoppix è la più diffusa) e poi salvare i dati su un disco/penna usb...
come compilatore c'è gcc (è da shell) e dovrebbe essere già pronto all'uso
ciao
__________________
wisher è offline   Rispondi citando il messaggio o parte di esso
Old 11-03-2006, 13:42   #16
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
Quote:
Originariamente inviato da VICIUS
Open SuSE è piuttosto facile da installare e gestire per un principiante. Per il compilatore su linux c'è gcc che va benissimo ed è gia incluso.

ciao
io per fare un esame universitario ho installato Fedora Core 4 su VMWare Workstation e devo dire che mi ci son trovato benissimo: installazione semplicissima, poi ho scelto GNOME (era la scelta di default ma l'avrei scelta comunque perché DanieleC88 insisteva a consigliarmela ), tutto parte, tutto a posto, tutto regolare; insomma non posso lamentarmi, mi stava quasi quasi iniziando a venire voglia di diventare un guru di Linux dopo esserlo stato di Windows NT
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 11-03-2006, 13:50   #17
VICIUS
Senior Member
 
L'Avatar di VICIUS
 
Iscritto dal: Oct 2001
Messaggi: 11471
Quote:
Originariamente inviato da 71104
io per fare un esame universitario ho installato Fedora Core 4 su VMWare Workstation e devo dire che mi ci son trovato benissimo: installazione semplicissima, poi ho scelto GNOME (era la scelta di default ma l'avrei scelta comunque perché DanieleC88 insisteva a consigliarmela ), tutto parte, tutto a posto, tutto regolare; insomma non posso lamentarmi, mi stava quasi quasi iniziando a venire voglia di diventare un guru di Linux dopo esserlo stato di Windows NT
Si so quanto può diventare insistente daniele
Cmq. se ti piace smanettare e programmare Linux è sicuramente meglio di Windows. Puoi mettere le mani al codice di tutto il sistema fino ad arrivare ai driver e il kernel.

ciao
VICIUS è offline   Rispondi citando il messaggio o parte di esso
Old 11-03-2006, 16:06   #18
Mixmar
Senior Member
 
L'Avatar di Mixmar
 
Iscritto dal: Feb 2002
Città: Trento
Messaggi: 962
Quote:
Originariamente inviato da 71104
[CUT] se proprio non vuoi fare il dual boot (e ti capisco) installati VMWare Workstation (se non erro ne esiste una versione gratis).
VMWare Workstation non è gratuito, ma c'è una versione di prova per 30 giorni; alternativamente, è possibile usare VMWare Player, che è gratuito (è uguale alla Workstation, accetta le stesse macchine virtuali, ma non si possono creare macchine nuove nè modificare i parametri di quelle esistenti). Per utilizzare macchine Linux, va molto bene poichè trovate sullo stesso sito della VMWare delle macchine già pronte: inoltre esiste una communità di appassionati che ne ha create diverse configurate per molti scopi diversi.

In sintesi: basta scaricare e lanciare il player...
__________________
"Et Eärallo Endorenna utúlien. Sinome maruvan ar Hildinyar tenn' Ambar-metta!" -- Aragorn Elessar, Heir of Isildur
Mixmar -- OpenSuSE 11.1 on AMD 64 3000+ on DFI LanParty nF4-D | GeForce 6600 GT + Thermaltake Schooner on Samsung 710N
Storage -- ( 2 x Hitachi Deskstar 80 Gb + 1 x Hitachi 250 Gb ) = 1 RAID 5 + 1 Storage space LaCie Ethernet Disk Mini 250 Gb | HP - DV2150 EL MILAN CLAN
Mixmar è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Antigravity A1: drone futuristico per riprese a 360° in 8K con qualche lacuna da colmare Antigravity A1: drone futuristico per riprese a ...
Sony Alpha 7 V, anteprima e novità della nuova 30fps, che tende la mano anche ai creator Sony Alpha 7 V, anteprima e novità della ...
realme GT 8 Pro Dream Edition: prestazioni da flagship e anima racing da F1 realme GT 8 Pro Dream Edition: prestazioni da fl...
OVHcloud Summit 2025: le novità del cloud europeo tra sovranità, IA e quantum OVHcloud Summit 2025: le novità del cloud...
Un mostro da MSI: QD-OLED WQHD a 500 Hz con AI Care e DisplayPort 2.1a Un mostro da MSI: QD-OLED WQHD a 500 Hz con AI C...
Axiom Space ha completato un importante ...
Gli aeroplani Airbus utilizzeranno i sat...
Una nuova immagine della cometa interste...
'La soluzione a un problema che non esis...
Radeon RX 9000 sì, Ryzen 9000 no:...
Amazon versa 180 milioni al Fisco e canc...
Meta, il Board di Supervisione guarda o...
DJI rivoluziona le consegne aeree: il nu...
Fibercop e Microsoft Italia uniscono per...
App Store Award 2025: scarica le 17 app ...
NVIDIA fa marcia indietro, il supporto P...
Addio definitivo alla GeForce GTX 1080: ...
Numeri record per gli iPhone 17: Apple s...
L'Italia del 2025 raccontata da Google: ...
Piaggio lancia Porter NPE, il pick-up el...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 21:36.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v