Strona 1 z 1

Wejście w Allegro

: 24 kwie 2009, o 14:23
autor: ?odzianin
Mam problem z projektem w Allegro (w dev c++). Jak można wprowadzać dane w takim projekcie? Próbowałem już umieścić polecenia cout i cin przed inicjalizacją trybu Allegro, ale program zachowuje się, jakby tych poleceń tam nie było, mimo wprowadzenia biblioteki iostream. Co mam zrobić?

Wejście w Allegro

: 24 kwie 2009, o 14:56
autor: spajder
a tworzysz projekt konsolowy?
Jak nie to musisz utworzyć najpierw normalne okienko windowsa do wprowadzenia danych

Wejście w Allegro

: 24 kwie 2009, o 15:16
autor: ?odzianin
W jaki sposób? A jeśli chcę żeby dane były wprowadzane w trybie Allegro?

Wejście w Allegro

: 28 kwie 2009, o 23:20
autor: MGT
Użyj np. z biblioteki allegro.

Ogólnie polecam tego manuala, tam w zasadzie wszystko jest.

Wejście w Allegro

: 23 maja 2009, o 19:46
autor: ?odzianin
Nawet niezły pomysł, ale czy mogę zrobić zrobić coś, żebym nie musiał za każdym razem robić ifa dla wpisanego 1,2,3...?

Wejście w Allegro

: 24 maja 2009, o 10:40
autor: MGT
Możesz napisać dowolną funkcję wczytującą, opartą na readkey.

Np, jak chcesz czytać cały napis, to możesz zrobić coś w stylu:

Kod: Zaznacz cały

int i=0;
while((znak = readkey()) != enter) wynik[i++] = znak;
Możesz też oczywiście dodać obsługę backspace (ostatni znak podmieniać zerem, cofać iterator) i inne cuda, wedle uznania.

Wejście w Allegro

: 24 maja 2009, o 16:51
autor: ?odzianin
A jak zamienić kod ascii na np. wpisaną cyfrę?

Wejście w Allegro

: 25 maja 2009, o 17:57
autor: MGT
To:

Kod: Zaznacz cały

val = readkey();
if ((val & 0xff) == '0') {}
jest równoważne:

Kod: Zaznacz cały

if ((val & 0xff) == 48) {}
co więcej:

Kod: Zaznacz cały

char =>  int
'0'  =>	48
'1'  =>	49
'2'  =>	50
...
tak samo, jak:

Kod: Zaznacz cały

char x = 48;
x++;
printf("%c -> %d",x,x); /* out: 1 -> 49 */
Mam nadzieję, że pomogło, pozdrawiam.