Форум программистов, компьютерный форум CyberForum.ru

Преобразование кода клавиши в int - C++

Восстановить пароль Регистрация
 
miragex
1 / 1 / 0
Регистрация: 11.07.2012
Сообщений: 122
23.01.2013, 23:16     Преобразование кода клавиши в int #1
Доброй ночи
Столкнулся вот с такой проблемой
Программа ждет нажатия клавиш 1 или 2 (другие клавиши не нажать)
Теперь мне надо преобразовать код клавиши обратно к int
а у меня показывает когда нажимаю на 1 -> 18, когда на 2 -> 28
А мне надо когда на 1 -> 1, когда на 2 -> 2
Что я не так делаю?
Код
#include<iostream>
#include <stdio.h>
#include <conio.h>

void rtr ();

main()
{
   rtr ();
   return 0;
}

void rtr ()
{
	static char cf;
	do {
			cf = getch();
		} while ((cf!='1')&&(cf!='2'));
	int rtr = atoi(&cf);
	printf("%d", rtr);
     .........
}
Спасибо
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.01.2013, 23:16     Преобразование кода клавиши в int
Посмотрите здесь:

C++ Преобразование int в CString ?
C++ преобразование из void* в int[n]
Преобразование string в int C++
C++ Преобразование LPVOID в int
Преобразование string в int C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Jupiter
Каратель
Эксперт C++
6542 / 3962 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
23.01.2013, 23:18     Преобразование кода клавиши в int #2
C++
1
int rtr = cf - '0';
ValeryS
Модератор
6374 / 4840 / 441
Регистрация: 14.02.2011
Сообщений: 16,043
23.01.2013, 23:26     Преобразование кода клавиши в int #3
Цитата Сообщение от miragex Посмотреть сообщение
atoi
работает со строкой а у тебя одиночный символ
или как сказал Jupiter,
или объявляй и работай со строкой
Цитата Сообщение от miragex Посмотреть сообщение
static char cf;
а статик то тебе зачем?
FreeMinder
 Аватар для FreeMinder
36 / 36 / 2
Регистрация: 29.08.2012
Сообщений: 59
23.01.2013, 23:43     Преобразование кода клавиши в int #4
Если только для цифр то можно так:
C++
1
cf = (char)getch();
Yandex
Объявления
23.01.2013, 23:43     Преобразование кода клавиши в int
Ответ Создать тему
Опции темы

Текущее время: 20:43. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru