Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Per cio che ho capito sscanf legge da una stringa"buffer" e memorizza negli argomenti "p.x" e "p.y", si può decidere la formattazione con il secondo parametro.
es:
Codice sorgente - presumibilmente C/C++
char buffer[10];
pnt ps; /*il tipo punto, e definito in un altro file ha come membri 2 int*/
FILE *pfile = fopen(nomefile, "r");
fgets(buffer, 10, pfile);
fclose(pfile);
sscanf(buffer, "%i %i", ps.x, ps.y);
tuttavia:
Testo quotato
cc sscanf.c -o sscanf
In file included from main.c:3:0:
sscanf.c: In function ‘cntrslz’:
sscanf.c:15:2: warning: format ‘%i’ expects argument of type ‘int *’, but argument 3 has type ‘int’ [-Wformat]
sscanf.c:15:2: warning: format ‘%i’ expects argument of type ‘int *’, but argument 4 has type ‘int’ [-Wformat]
Ciao, ricorda di mettere & nello sscanf cioe' sscanf(buffer, "%d %d",& ps.x, &ps.y); perchè ha bisogno dell'indirizzo di memoria delle variabili passate come argomento in modo da modificarne il valore.
Quindi devi fornire un puntatore all'intero e non l'intero
sscanf(buffer, "%i %i", &ps.x, &ps.y);
Ultima modifica effettuata da nessuno il 28/02/2012 alle 17:24
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità.
grazie nessuno, si hai ragione, questa domanda la potevo risparmiare, se ci avessi dedicato un poo piu di attenzione...
Più che altro, se vuoi imparare, devi tentare di chiedere al forum solo quando non sei riuscito - dopo vari tentativi e giorni di riflessione e prove - a risolvere da solo.
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità.