Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2005
    Messaggi
    40

    [C] interruzione contarore

    salve,

    ho provato il seguente codice

    t=1000;
    char s;

    while ((s!='a') && (t!=0))

    {
    gotoxy(40,15);
    printf("%4d",t);
    s=getchar();
    t--;

    }

    stampa a video il numero 1000 che decremente il suo valore quando viene premuto un tasto
    il ciclo si interrompe solo se t assume il valore di 0 o se viene inserita la lettera 'a'
    vorrei sapere come effettuare lo stesso controllo facendo in modo che il contatore decrementi anche se non viene premuto nessun tasto e che si interrompa solo alle stesse condizioni di prima.
    grazie

  2. #2

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2005
    Messaggi
    40
    Originariamente inviato da kentaromiura
    http://forum.html.it/forum/showthrea...hreadid=835063

    ok, ho usato la funzione kbhit() nel ciclo while ma non riesco ad avere il controllo del tipo di carattere.
    usandola così, il ciclo si interrompe con qualsiasi tasto.
    a me interessa uscire dal ciclo solo premendo il tasto 'a'.
    come posso effettuare il controllo?

  4. #4
    codice:
    #include <windows.h>
    #include<stdio.h>
    int main(void){
    end=1;
    while(end!=0){
    if (GetKeyState (41) < 0) end=0;//A key
    }
    return 0;
    }
    per ottenere un keycode usa VkKeyScan(char)

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2005
    Messaggi
    40
    Originariamente inviato da kentaromiura
    codice:
    #include <windows.h>
    #include<stdio.h>
    int main(void){
    end=1;
    while(end!=0){
    if (GetKeyState (41) < 0) end=0;//A key
    }
    return 0;
    }
    per ottenere un keycode usa VkKeyScan(char)
    potresti gentilmente farmi un esempio di codice con l'utilizzo di VkKeyScan() ?

  6. #6
    Originariamente inviato da xxomerxx
    potresti gentilmente farmi un esempio di codice con l'utilizzo di VkKeyScan() ?
    printf("%d",VkKeyScan('a')&255);
    ritorna 65
    codice:
    #include <stdio.h>
    #include <windows.h>
    int main(void){
    	while(!(GetKeyState (VkKeyScan('A')&255)<0));
    printf("%d",VkKeyScan('A')&255);
    getchar();getchar();
    
    }

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.