Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Deep Tech Revolution: così Area Science Park apre i laboratori alle startup
Deep Tech Revolution: così Area Science Park apre i laboratori alle startup
Siamo tornati nel parco tecnologico di Trieste per il kick-off del programma che mette a disposizione di cinque startup le infrastrutture di ricerca, dal sincrotrone Elettra ai laboratori di genomica e HPC. Roberto Pillon racconta il modello e la visione
HP OMEN MAX 16 con RTX 5080: potenza da desktop replacement a prezzo competitivo
HP OMEN MAX 16 con RTX 5080: potenza da desktop replacement a prezzo competitivo
HP OMEN MAX 16-ak0001nl combina RTX 5080 Laptop e Ryzen AI 9 HX 375 in un desktop replacement potente e ben raffreddato, con display 240 Hz e dotazione completa. Autonomia limitata e calibrazione non perfetta frenano l'entusiasmo, ma a 2.609 euro è tra le proposte più interessanti della categoria.
Recensione Google Pixel 10a, si migliora poco ma è sempre un'ottima scelta
Recensione Google Pixel 10a, si migliora poco ma è sempre un'ottima scelta
Google ha appena rinnovato la sua celebre serie A con il Pixel 10a, lo smartphone della serie più conveniente se consideriamo il rapporto tra costo e prestazioni. Con il chip Tensor G4, un design raffinato soprattutto sul retro e l'integrazione profonda di Gemini, il colosso di Mountain View promette un'esperienza premium a un prezzo accessibile. E il retro non ha nessuno scalino
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 03-12-2009, 14:23   #1
nikel
Senior Member
 
L'Avatar di nikel
 
Iscritto dal: Mar 2006
Città: Milano
Messaggi: 832
[C ANSI] input da tastiera che non blocchi l'esecuzione del codice

Ciao!

come da titolo.. cerco un modo per verificare se c'è un tasto premuto e, se si ,leggerlo per poi utilizzarlo nel programma

(quando si preme il tasto non deve apparire sullo schermo)

è possibile?

grazie!
nikel è offline   Rispondi citando il messaggio o parte di esso
Old 03-12-2009, 15:14   #2
bottomap
Member
 
Iscritto dal: Feb 2005
Città: Prato
Messaggi: 149
Ciao,

Non credo faccia parte dello standard ANSI, ma sicuramente in ogni compilatore che può usare conio.h hai a disposizione la funzione kbhit() (una _kbhit(), conforme ISO C++, esiste in MSVC) che ritorna true o false a seconda del numero di caratteri contenuti nel buffer di input.

Ciaociao
__________________
Venite a visitarci qui:http://www.bottomap.com
Bottomap is a proud Masterdrive.it moderator
bottomap è offline   Rispondi citando il messaggio o parte di esso
Old 03-12-2009, 16:04   #3
nikel
Senior Member
 
L'Avatar di nikel
 
Iscritto dal: Mar 2006
Città: Milano
Messaggi: 832
ho usato kbhit() però cercavo qualcosa di ansi...
nikel è offline   Rispondi citando il messaggio o parte di esso
Old 03-12-2009, 18:47   #4
wingman87
Senior Member
 
Iscritto dal: Nov 2005
Messaggi: 2788
Credo che non esista una funzione standard che faccia quello che chiedi. Qui puoi trovare l'intera libreria standard: LINK
wingman87 è offline   Rispondi citando il messaggio o parte di esso
Old 03-12-2009, 20:18   #5
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quote:
Originariamente inviato da nikel Guarda i messaggi
è possibile?
Non è possibile.
Il metodo da usare dipende tutto da sistema operativo e compilatore.
Quote:
Originariamente inviato da bottomap Guarda i messaggi
(una _kbhit(), conforme ISO C++, esiste in MSVC)
Non è conforme ISO Tra l'altro è in conio.h del platform sdk, quindi niente di meno conforme allo standard visto che questo header non esistere nello standard.

Ultima modifica di cionci : 03-12-2009 alle 20:20.
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 03-12-2009, 20:32   #6
maulattu
Senior Member
 
L'Avatar di maulattu
 
Iscritto dal: Mar 2005
Città: ~
Messaggi: 740
Quote:
Originariamente inviato da cionci Guarda i messaggi
Non è possibile.
Il metodo da usare dipende tutto da sistema operativo e compilatore.

Non è conforme ISO Tra l'altro è in conio.h del platform sdk, quindi niente di meno conforme allo standard visto che questo header non esistere nello standard.
non si può fare uso della select che osserva l'unico file descriptor "stdin"?
__________________
Ciao ciao cagnolino Billy
MacMini late 2009, 2.53GHz, 4GB ram, 320GB hard disk, Snow Leopard 10.8.2 - iPod Nano 6th gen.
XBOX Live GamerTag: InsaneMau
maulattu è offline   Rispondi citando il messaggio o parte di esso
Old 03-12-2009, 20:55   #7
bottomap
Member
 
Iscritto dal: Feb 2005
Città: Prato
Messaggi: 149
Quote:
Originariamente inviato da cionci Guarda i messaggi
Non è conforme ISO Tra l'altro è in conio.h del platform sdk, quindi niente di meno conforme allo standard visto che questo header non esiste nello standard.
Mi rifacevo semplicemente a quanto menzionato in msdn riguardo alla funzione kbhit (http://msdn.microsoft.com/en-us/libr...8VS.80%29.aspx).
Si può leggere in testa alla descrizione la frase:
Quote:
Use the ISO C++ conformant _kbhit instead
Onestamente non saprei cosa indichi in merito l'ISO C++ (non C - onestamente non sapevo neppure esistesse uno standard ISO C++ separato)... ho riportato solo quanto descritto. Chiedo scusa se ho dato un'indicazione errata in tal caso andrebbero tirate le orecchie pure a mamma MS.
Sarebbe tra l'altro la prima volta che trovo qualcosa di esplicitamente sbagliato su msdn (l'undocumented è un discorso a parte).

Ciaociao
__________________
Venite a visitarci qui:http://www.bottomap.com
Bottomap is a proud Masterdrive.it moderator

Ultima modifica di bottomap : 03-12-2009 alle 21:00.
bottomap è offline   Rispondi citando il messaggio o parte di esso
Old 03-12-2009, 21:32   #8
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Come vedi nemmeno _kbhit è standard (nemmeno C++), altrimenti ce lo scrivevano
http://msdn.microsoft.com/en-us/libr...4c(VS.80).aspx
Anche _kbhit risiede in conio.h, tutto quello che c'è in conio.h non è standard.
Probabilmente per "conforme" allo standard ISO C++ si intende che il nome della funzione è conforme allo standard ISO C++ perché è presente l'underscore. Ipotizzando, è possibile che preveda l'underscore per le funzioni che vengono aggiunte alla libreria standard per evitare che si confonda con le altre funzioni.
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 03-12-2009, 21:55   #9
bottomap
Member
 
Iscritto dal: Feb 2005
Città: Prato
Messaggi: 149
Ciao,

Si, evidentemente si indica ISO C++ conformant per l'underscore davanti al nome e non per altro.

Non mi pare però che in altre funzioni che fanno parte dello standard sia specificato come dici ("altrimenti ce lo scrivevano").
E'vero invece che ogni funzione POSIX per cui esiste la corrispondente _funzione è descritta la stessa frase (This POSIX function is deprecated beginning in Visual C++ 2005. Use the ISO C++ conformant _<funzione> instead.).

Ciaociao
__________________
Venite a visitarci qui:http://www.bottomap.com
Bottomap is a proud Masterdrive.it moderator
bottomap è offline   Rispondi citando il messaggio o parte di esso
Old 03-12-2009, 21:56   #10
M4rk191
Senior Member
 
L'Avatar di M4rk191
 
Iscritto dal: Sep 2008
Messaggi: 1271
Quote:
Originariamente inviato da nikel Guarda i messaggi
ho usato kbhit() però cercavo qualcosa di ansi...
Se ti serve una soluzione che rispetti "lo standard ANSI" ricorda che ci sono du standard, C89 e C99. Ad ogni modo la maggior parte dei compilatori (GCC incluso) non supportano tutte le caratteristiche previste dal nuovo standard.
__________________
MacBook 6,1|2,26 Ghz C2D|2GB 1067 Mhz DDR3|GeForce 9400M|Mac OSX 10.6.2
M4rk191 è offline   Rispondi citando il messaggio o parte di esso
Old 03-12-2009, 22:02   #11
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quote:
Originariamente inviato da bottomap Guarda i messaggi
Non mi pare però che in altre funzioni che fanno parte dello standard sia specificato come dici ("altrimenti ce lo scrivevano").
L'hanno tolto, una volta c'era su ogni funzione uno specchietto in cui c'era scritto se era ANSI e/o POSIX.
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 03-12-2009, 22:20   #12
bottomap
Member
 
Iscritto dal: Feb 2005
Città: Prato
Messaggi: 149
Evidentemente si... nell'msdn fornita su cd con il mcvs .net 2003 non c'è traccia della cosa (anzi direttamente kbhit rimanda su _kbhit senza avere una sua paginetta di interludio).

Sono curioso di vedere se riesco a recuperare il vecchio msdn fornito con il vs5 che usavo al lavoro. Ma mi pare che fino al vs6 non esistesse proprio la forma _<funzione> per la maggior parte delle funzioni che sarebbero diventate deprecate (comprese quelle del conio). Forse comunque menzionavano se fossero o meno di derivazione POSIX.
__________________
Venite a visitarci qui:http://www.bottomap.com
Bottomap is a proud Masterdrive.it moderator
bottomap è offline   Rispondi citando il messaggio o parte di esso
Old 04-12-2009, 01:31   #13
||ElChE||88
Senior Member
 
Iscritto dal: Dec 2003
Messaggi: 4907
Quote:
Originariamente inviato da M4rk191 Guarda i messaggi
Ad ogni modo la maggior parte dei compilatori (GCC incluso) non supportano tutte le caratteristiche previste dal nuovo standard.
Nuovo?
Ha 10 anni!
||ElChE||88 è offline   Rispondi citando il messaggio o parte di esso
Old 04-12-2009, 02:47   #14
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quote:
Originariamente inviato da bottomap Guarda i messaggi
Evidentemente si... nell'msdn fornita su cd con il mcvs .net 2003 non c'è traccia della cosa (anzi direttamente kbhit rimanda su _kbhit senza avere una sua paginetta di interludio).
C'è ancora !!!
Codice:
Function 	Required header 	Compatibility
fgets 		<stdio.h> 		ANSI, Win 98, Win Me, Win NT, Win 2000, Win XP
fgetws 		<stdio.h> or <wchar.h> 	ANSI, Win 98, Win Me, Win NT, Win 2000, Win XP
cionci è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Deep Tech Revolution: così Area Science Park apre i laboratori alle startup Deep Tech Revolution: così Area Science P...
HP OMEN MAX 16 con RTX 5080: potenza da desktop replacement a prezzo competitivo HP OMEN MAX 16 con RTX 5080: potenza da desktop ...
Recensione Google Pixel 10a, si migliora poco ma è sempre un'ottima scelta Recensione Google Pixel 10a, si migliora poco ma...
6G, da rete che trasporta dati a rete intelligente: Qualcomm accelera al MWC 2026 6G, da rete che trasporta dati a rete intelligen...
CHUWI CoreBook Air alla prova: design premium, buona autonomia e qualche compromesso CHUWI CoreBook Air alla prova: design premium, b...
Asus ExpertBook Ultra: Intel Core Ultra ...
Intel presenta i processori desktop Core...
Un'AI ha trovato una falla critica in Wi...
OPPO Find N6 rivoluziona i foldable: add...
Enel, completata l'installazione di tutt...
Tutti abbandonano il Blu-ray ma Panasoni...
CL1: le prime installazioni di data cent...
Yoshi and the Mysterious Book: annunciat...
CATL frena sulle batterie a stato solido...
NIO, ecco il profitto nel quarto trimest...
iRobot Roomba Mini: il robot aspirapolve...
Manda le DDR5 in assistenza, il venditor...
Scope elettriche lavapavimenti di marca ...
Delle oltre 750.000 offerte solo il 2% &...
Tutti gli smartphone più convenie...
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: 15:32.


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