C Duvida

BiozzZ

Power Member
Olá, eu tou com um problema em tentar passar uma ideia para a linguagem C

dentro de um loop eu queria ter uma função que me gravasse numa variavel um caracter que eu esteja a pressionar no teclado e que esperasse um período de tempo, caso passado esse período de tempo eu não tenha pressionado nenhuma tecla eu queria que ele saltasse para outra parte do código.

p.s. Eu queria que não fosse preciso pressionar a tecla enter após a introdução do caracter.

Espero que percebam a minha ideia e que me possam ajudar, obrigado.

Bioz
 
Olá, eu tou com um problema em tentar passar uma ideia para a linguagem C

dentro de um loop eu queria ter uma função que me gravasse numa variavel um caracter que eu esteja a pressionar no teclado e que esperasse um período de tempo, caso passado esse período de tempo eu não tenha pressionado nenhuma tecla eu queria que ele saltasse para outra parte do código.

p.s. Eu queria que não fosse preciso pressionar a tecla enter após a introdução do caracter.

Espero que percebam a minha ideia e que me possam ajudar, obrigado.

Bioz

isso do periodo de tempo nao sei,
mas a parte de nao ter que carregar no enter sei uma maneira em c++ ,mas nao sei se vai ajudar

usas estes dois namespaces

Código:
using namespace System;
using namespace System::Text; //nao tenho bem a certeza se é so isto


//declaras uma variavel que vai ter o caracter:
ConsoleKeyInfo tecla;

//uma perguntazinha:

cout<<"Carregue 1 para entrar ou 0 para sair"<<endl;
        tecla = Console::ReadKey();

//verificacao:
if(tecla.KeyChar=='1'){
            cout<<"\nA carregar";
}//...etc

cumpz
 
Última edição pelo moderador:
Olá mais uma vez, não estou a conseguir usar esta função:
Código:
_setcursortype(_NOCURSOR);
uso o dev cpp, alguma alternativa?

Thanks

já a consegui usar fazendo algumas alterações, mas agora é o raio do programa que não funciona argh

Código:
#include <stdio.h>
#include <conio.h>
#define CIMA 72
#define BAIXO 80
#define ESQ 77
#define DIR 75
#define _NOCURSOR 100 
void _setcursortype (int type);
main ( ){

      int i,x,y;
      char c;
      _setcursortype(_NOCURSOR);
      clrscr();
      x=15;
      y=10;
      gotoxy(x,y);
      printf("*");
      do{
      c = getch();
      if (c == 0){
        c=getch();

        switch (c){
            case CIMA:
                gotoxy(x,y);
                printf(" ");
                if(y != 1) y--;
                gotoxy(x,y);
                printf("*");
                break;

            case BAIXO:
                gotoxy(x,y);
                printf(" ");
                if (y != 24) y++;
                gotoxy(x,y);
                printf("*");
                break;

            case ESQ:
                gotoxy(x,y);
                printf(" ");
                if (x != 80) x++;
                gotoxy(x,y);
                printf("*");
                break;

            case DIR:
                gotoxy(x,y);
                printf(" ");
                if (x != 1) x--;
                gotoxy(x,y);
                printf("*");
                break;
        }

       }
      }while(c !='a');
}

desculpem, que estupidez, já tou nervoso, já nem mexia nas setas certas..
 
Última edição pelo moderador:
Provavelmente não funciona porque estás a usar a <conio.h> no Dev-C++. Tal como eu tinha dito, ela só vem incluída nos compiladores da Borland. Provavelmente, terás de a sacar e incluir no teu projecto ou algo assim. Tenta googlar.
 
Back
Topo