

C - nejde načíst znak
Dělám jeden program do školy a potřebuju načíst nak z klávesnice ale pokaždé když program dojde do fáze kdy má načíst znak tak to přeskočí a pokračuje za načítáním, prostě nic nenačte. Zkoušel jsem to pomocí funkce getchar() i pomocí scnaf("%c", &x). Fakticky nevím co s tím, a nestalo se mi to porvé. Jestli někdo víte jak ten problém vyřešit, prosím poraďte.
Dělám v Code::Blocks ale to samé mi to děla i v Dev-C++.
tady je kod toho programu, zkuste kdyztak podivat kde mam chybu pls
ad 1) namiesto tych mastnych if-ov pouzi case
ad 2) skus ten fflush dat pred kazdy scanf.
Možná místo fflush by mělo stačit zapsat scanf(" %c",&znak); tedy přidat mezeru před znak charu.
Načítáš znak do proměnné op, kterou máš ale definovanou jako int.
Jsem sice programátor začátečník ale naučil jsem se ukladat znaky do int podle jedne knihy, učili nas to i ve skole, a taky to funguje.
Jakou hodnotu asi pak má ta proměnná? Znak "+" to není
Sice to není dokonalé, ale trochu to funguje
. Vytvořeno v Visual Studio 2010.
díky, ale nebylo to nutné, už mi to funguje. A funguje to i s INT. Znak se do proměnné ukládá pod jeho číselnou hodnotou v ASCII tabulce, takže je uplně jedno jestli použiju INT nebo CHAR.