|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Junior Member
Iscritto dal: May 2008
Città: Latina
Messaggi: 29
|
Stampe? dove finiscono? :o
Sera a tutti, vi volevo porre un problema che mi viene fuori quando eseguo programmi C su ubuntu, in pratica se io ho un sorgente che esegue delle stampe, l'ultima stampa prima della chiusa non la esegue mai -.- cioè se io ho una cosa di questo tipo
Codice:
int main() { ......... ......... printf("%d\n",NMax); printf("%.2f\n",Media); return 0; } Codice:
printf("%d\n",NMax); Codice:
printf("%.2f\n",Media); |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Mar 2005
Città: /home/gica
Messaggi: 1653
|
Il programma lo esegui da una shell o attraverso un IDE?
__________________
gianluca@gicastation:~$ tar -c tar: Codardamente mi rifiuto di creare un archivio vuoto ![]() |
![]() |
![]() |
![]() |
#3 |
Junior Member
Iscritto dal: May 2008
Città: Latina
Messaggi: 29
|
uhm dal terminale XD , cioè che intendi per IDE?
|
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Mar 2005
Città: /home/gica
Messaggi: 1653
|
L'IDE (Integrated Development Environment) è un programma per... programmare
![]() Comunque se lo esegui da terminale e ti fa quello scherzo c'è qualcosa che non va; a me, se metto due istruzioni di stampa, funzionano entrambe. Potrebbe esserci qualcosa che ti sfugge, ma se il programma è quello (molto banale) che hai postato, allora non saprei ![]()
__________________
gianluca@gicastation:~$ tar -c tar: Codardamente mi rifiuto di creare un archivio vuoto ![]() |
![]() |
![]() |
![]() |
#5 |
Junior Member
Iscritto dal: May 2008
Città: Latina
Messaggi: 29
|
mmmm no , girando un pò mi han detto che il problema può stare direttamente a un bug di implementazione del printf(); e mi hanno spiegato che esso prima di stampare a video passa per un buffer e poi stampa a video , solo che a me non fa attempo a stampare a video che il programma termina e il buffer si svuota... per fare andare la stampa o metto uno \n alla fine in modo da visualizzare tutto ciò ke mi interessa " lo \n non verrà visualizzato ovviamente " oppure uso funzioni tipo puts(); che stampano dirette a video bù :S cose molto strane comunque -.-
|
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Mar 2005
Città: /home/gica
Messaggi: 1653
|
Il tuo problema si verifica solitamente quando si fanno operazioni un po' più complicate di due semplici stampe sullo standard output (tipo stampare con processi concorrenti e roba simile). Comunque prova a mettere l'istruzione
Codice:
fflush(stdout); Ciao PS: questo thread starebbe meglio nella sezione Programmazione ![]()
__________________
gianluca@gicastation:~$ tar -c tar: Codardamente mi rifiuto di creare un archivio vuoto ![]() |
![]() |
![]() |
![]() |
#7 |
Junior Member
Iscritto dal: May 2008
Città: Latina
Messaggi: 29
|
Già provato, il
Codice:
fflush(stdout); |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 21:36.