PDA

View Full Version : [C++] Printf e struct


ST6Man
07-08-2008, 11:41
Giorno a tutti,
non è da molto che ho cominciato a "giocare" con il C++ e avrei bisogno di una dritta:

Dovrei stampare con printf una struttura timeval, posso stamparla direttamente o devo esplicitare nella printf tutti i campi di cui è composta la struttura?
Esiste un segnaposto che mi consenta di scrivere :


printf("%segnaposto_timeval" , struttura_timeval)

the_ivos
07-08-2008, 11:52
Eh mi sa che devi proprio esplicitare tutti i campi... uno ad uno... :p

Per segnaposto che intendi? :wtf:

ST6Man
07-08-2008, 12:03
uhm.. li ho sempre chiamati cosi ma forse non è il vero e proprio gergo tecnico :D
"specifier" in inglese, quelli che mi consentono di definire come deve essere stampata una variabile:


printf("%d", num)


il 'd' è il segnaposto, che dice di interpretare e stampare num come intero.


Grazie cmq per l'aiuto ;)

the_ivos
07-08-2008, 12:10
Ah ok! :D
Avevo intuito che indendessi quelli solo che non li ho mai chiamati nè sentiti chiamare cosi! :D

De nada ;)

Ziosilvio
07-08-2008, 13:06
Dovrei stampare con printf una struttura timeval, posso stamparla direttamente o devo esplicitare nella printf tutti i campi di cui è composta la struttura?
La seconda che hai detto.

In alternativa, potresti creare una classe che estende la struttura timeval e possiede un metodo print che stampa il contenuto della struttura come vuoi tu.
Ma devi comunque tener conto delle restrizioni di printf, o cout<<, o quel che sarà.
Esiste un segnaposto che mi consenta di scrivere :


printf("%segnaposto_timeval" , struttura_timeval)

No, la lista completa degli specificatori di formato è sul manuale, e printf non ne riconosce altri.

tomminno
07-08-2008, 13:12
Per stampare devi accodare tutti i campi di tm.
Comunque printf è C.
Se vuoi usare il C++ usa std::cout.