Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Naciśnij enter... C++

Ostatnio zmodyfikowano 2011-07-25 15:26
Autor Wiadomość
Loodwin
Temat założony przez niniejszego użytkownika
Naciśnij enter... C++
» 2011-07-25 15:13:44
Mam pytanie.
Jaka komenda jest potrzebna, aby trzeba było nacisnąć np. enter, a po naciśnięciu coś tam się robi? :) Z góry dziękuje za pomoc.
P-36961
McAffey
» 2011-07-25 15:18:24
Możesz to zrobić za pomocą
getch();
 z
conio.h
.
P-36966
jankowalski25
» 2011-07-25 15:20:29
Po wciśnięciu entera wykona się funkcja instrukcje. Aby wyjść, wciśnij Esc. Oto kod:
C/C++
#include <iostream>
#include <conio.h>

void instrukcje()
{
    std::cout << "Tekst";
}

int main()
{
    unsigned char znak;
    int kod;
    do
    {
        znak = getch();
        kod = static_cast < int >( znak );
        if( kod == 13 )
        {
            instrukcje();
        }
    } while( kod != 27 );
   
    return 0;
}
Dzieje się tak dlatego, że kod znaku Enter to 13, a kod znaku Esc to 27. Aby uzyskać kody wszystkich znaków, zastosuj poniższy kod:
C/C++
#include <iostream>
#include <conio.h>

int main()
{
    unsigned char znak;
    int kod = 0;
    do
    {
        std::cin.clear();
        std::cin.sync();
        std::cout << "kod: " << kod << " znak: " << static_cast < char >( kod ) << "\n";
        kod++;
    } while( kod < 256 );
   
    return 0;
}
P-36968
Loodwin
Temat założony przez niniejszego użytkownika
Nie o to mi chodzi
» 2011-07-25 15:21:18
Nie chodzi mi o to, bo jak napiszę getch(); to mogę nacisnąć dowolny przycisk, a mi chodzi o to żeby jak wyświetli się: Wciśnij przycisk "p", to żeby można było wcisnąć tylko przycisk "p" żeby coś zadziałało.
P-36970
Loodwin
Temat założony przez niniejszego użytkownika
Dzięki...
» 2011-07-25 15:24:22
@jankowalski25
Dzięki, ale mógłbyś mi wytłumaczyć, która komenda jest odpowiedzialna za naciśnięcie entera?
P-36972
SeaMonster131
» 2011-07-25 15:25:21
C/C++
char znak;

znak = getch();

if( znak == 'p' )
{
   
}

A tutaj program zaczeka aż naciśniesz klawisz ENTER:
cin.get();
P-36973
Loodwin
Temat założony przez niniejszego użytkownika
A...
» 2011-07-25 15:26:49
Aha, to rozumiem. Po wpisaniu if( kod == 13). Ok, dzięki za pomoc! :)
P-36974
« 1 »
  Strona 1 z 1