Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Ryzen Threadripper 9980X e 9970X alla prova: AMD Zen 5 al massimo livello
Ryzen Threadripper 9980X e 9970X alla prova: AMD Zen 5 al massimo livello
AMD ha aggiornato l'offerta di CPU HEDT con i Ryzen Threadripper 9000 basati su architettura Zen 5. In questo articolo vediamo come si comportano i modelli con 64 e 32 core 9980X e 9970X. Venduti allo stesso prezzo dei predecessori e compatibili con il medesimo socket, le nuove proposte si candidano a essere ottimi compagni per chi è in cerca di potenza dei calcolo e tante linee PCI Express per workstation grafiche e destinate all'AI.
Acer TravelMate P4 14: tanta sostanza per l'utente aziendale
Acer TravelMate P4 14: tanta sostanza per l'utente aziendale
Forte di soluzioni tecniche specifiche, il notebook Acer TravelMate P4 14 abbina dimensioni compatte e buona robustezza per rispondere alle necessità specifiche degli utenti aziendali. La piattaforma AMD Ryzen 7 Pro assicura prestazioni elevate con i tipici ambiti di produttività personale e sul lavoro, mantenendo un'elevata autonomia.
Hisense M2 Pro: dove lo metti, sta. Mini proiettore laser 4K per il cinema ovunque
Hisense M2 Pro: dove lo metti, sta. Mini proiettore laser 4K per il cinema ovunque
Dal salotto al giardino, il nuovo proiettore laser di Hisense promette esperienze cinematografiche in qualsiasi contesto: qualità d’immagine, semplicità d’uso, versatilità e prezzo competitivo il suo poker d'assi
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 25-06-2006, 22:55   #1
enzolabbate
Junior Member
 
Iscritto dal: Jun 2006
Messaggi: 12
[c++ ]problema getch()

mi sapete dire xome mai quando eseguo questa istruzione:

cout<<"Salvare? (s/n): ";r=getche();

mi chiede prima il valore della variabile e poi mi stampa "Salvare? (s/n)"?
se mi rispondete mi fareste un grandissimo piacere...è per un esameeee!
se avete alternative alla getch va nache bene..
Grazie 1000
enzolabbate è offline   Rispondi citando il messaggio o parte di esso
Old 26-06-2006, 00:26   #2
Black imp
Senior Member
 
Iscritto dal: Nov 2000
Città: MILANO
Messaggi: 2658
non so se è questa la causa però posso dirti che diverse volte programmando e usando thread diversi o addirittura processi diversi, le printf potevano essere differite apparentemente a caso per cui l'ordine delle scritte non era mai quello voluto. può essere che quando il sistema cerca di stampare a video passa intanto all'istruzione successiva la quale arriva prima e prendere la risorsa video. non saprei che altro dirti
Black imp è offline   Rispondi citando il messaggio o parte di esso
Old 26-06-2006, 07:45   #3
trallallero
Senior Member
 
L'Avatar di trallallero
 
Iscritto dal: May 2006
Città: Wursteland
Messaggi: 1749
Quote:
Originariamente inviato da enzolabbate
mi sapete dire xome mai quando eseguo questa istruzione:

cout<<"Salvare? (s/n): ";r=getche();

mi chiede prima il valore della variabile e poi mi stampa "Salvare? (s/n)"?
se mi rispondete mi fareste un grandissimo piacere...è per un esameeee!
se avete alternative alla getch va nache bene..
Grazie 1000
getche ? io conosco getch, ungetch etc ma getche
non l'ho mai vista. Infatti non la vede neanche il man

Comunque le varie funzioni getch danno problemi se non si ha dimestichezza con
i "curses". É che la mitica Borland ci ha viziato con le sue funzioni
get...() ... kbhit() ... poi passi su linux o unix e ... non vanno piú
Ti posto quello che dice il man:

Codice:
...
When using getch(), wgetch(), mvgetch(), or mvwgetch(), noc-
break mode (nocbreak()) and echo mode (echo()) should not be
used at the same time.  Depending on the state  of  the  tty
driver when each character is typed, the program may produce
undesirable results.
l'alternativa che ti posso consigliare:

Codice:
   cout << "Salvare? (s/n): ";
   cin >> r;
ciao
__________________
Nintendo WIII 4d Turbo Intercooler - Sestium X 666 99,312 GHz - 6.984 Ram Σ(9999) MHz - HDD SATA 97e^(10) bytes 93³ rpm - ATI biberon X900z Mb - Win Eight SP (1 > yours) 16 Valve
trallallero è offline   Rispondi citando il messaggio o parte di esso
Old 26-06-2006, 08:27   #4
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
Quote:
Originariamente inviato da enzolabbate
mi sapete dire xome mai quando eseguo questa istruzione:

cout<<"Salvare? (s/n): ";r=getche();

mi chiede prima il valore della variabile e poi mi stampa "Salvare? (s/n)"?
se mi rispondete mi fareste un grandissimo piacere...è per un esameeee!
se avete alternative alla getch va nache bene..
Allora... intanto c'è da dire alcune cose: getche fa parte della libreria conio (conio.h), che non è "standard". getche è praticamente uguale a getch solo che mentre quest'ultima non fa l'eco del carattere, la getche fa l'eco del carattere.
Per il fatto che il tuo codice presenta quel comportamento anomalo, presumo che sia un banale problema di buffering. La gestione dell'output con cout è "bufferizzata" mentre getch/getche lavorano direttamente con il terminale.

A dire il vero ho provato il tuo codice sopra usando VC++.net 2003 e posso assicurare che, per la prova che ho fatto, si comporta correttamente, cioè prima stampa il testo e poi richiede il carattere. Non so dirti perché, probabilmente dipende anche dalla implementazione specifica della libreria.

Comunque per essere sicuri che funzioni in ogni caso, puoi fare:
Codice:
cout<<"Salvare? (s/n): ";
cout.flush ();
r=getche();
in questo modo cout viene forzato a scrivere l'output a video.
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%)
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 26-06-2006, 09:38   #5
trallallero
Senior Member
 
L'Avatar di trallallero
 
Iscritto dal: May 2006
Città: Wursteland
Messaggi: 1749
Quote:
Originariamente inviato da andbin
Allora... intanto c'è da dire alcune cose: getche fa parte della libreria conio (conio.h), che non è "standard".
conio.h! Borland, che ricordi (Turbo C++ 3.n)
ma conio non era solo della Borland ?
mi ricordo che col VC avevo avuto dei problemi con la getch()
ma parlo del '99, vaghi ricordi e poca esperienza ...
__________________
Nintendo WIII 4d Turbo Intercooler - Sestium X 666 99,312 GHz - 6.984 Ram Σ(9999) MHz - HDD SATA 97e^(10) bytes 93³ rpm - ATI biberon X900z Mb - Win Eight SP (1 > yours) 16 Valve
trallallero è offline   Rispondi citando il messaggio o parte di esso
Old 26-06-2006, 09:42   #6
enzolabbate
Junior Member
 
Iscritto dal: Jun 2006
Messaggi: 12
andbin sei un diooo! aggiungendo la flush funziona alla grande!all'esame scrivero sotto "si ringrazia la collaborazione di andbin". ciao
enzolabbate è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Ryzen Threadripper 9980X e 9970X alla prova: AMD Zen 5 al massimo livello Ryzen Threadripper 9980X e 9970X alla prova: AMD...
Acer TravelMate P4 14: tanta sostanza per l'utente aziendale Acer TravelMate P4 14: tanta sostanza per l'uten...
Hisense M2 Pro: dove lo metti, sta. Mini proiettore laser 4K per il cinema ovunque Hisense M2 Pro: dove lo metti, sta. Mini proiett...
Lenovo ThinkPad X1 2-in-1 G10 Aura Edition: il convertibile di classe Lenovo ThinkPad X1 2-in-1 G10 Aura Edition: il c...
Intervista a Stop Killing Games: distruggere videogiochi è come bruciare la musica di Mozart Intervista a Stop Killing Games: distruggere vid...
Xbox: dal prossimo mese verifica dell'id...
Corsair AI Workstation 300: poco pi&ugra...
Addio a Elio Marioli, un pioniere della ...
L'IA sta già diminuendo il potere...
Guida autonoma? Gli ADAS falliscono e in...
Skechers lancia le scarpe per bambini co...
Revolut e Audi F1: un’alleanza rivoluzio...
Gestione attività di Windows 11 d...
Amazon lancia il nuovo videocitofono Bli...
Robot aspirapolvere al top: i nuovi DEEB...
Opera vs Microsoft: la guerra dei browse...
Router e ripetitori FRITZ! in offerta su...
Spotify vola a quota 700 milioni di uten...
Microsoft pronta ad abbandonare il launc...
Windows 11, arriva una feature multimoni...
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: 03:32.


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