2013-11-11 6 views
-1

Что мне нужно сделать, это ввести строку int c с клавиатуры, но каждая цифра должна быть одной цифрой int.Как сделать каждый вход в int cstring одной цифрой?

Например, в запущенной программе, если я буду вводить «1234», он не должен читать «1234», а «1», а затем «2», «3», а затем «4». Я бы представил свой мыслительный процесс на этом, но здесь у меня полная потеря.

Это, кстати, на C++, и у меня есть ограничение на невозможность использовать что-либо из библиотеки STL.

+2

Если это ошеломляет как домашнее задание ... –

+0

Прочитайте CHAR вместо строки, затем преобразуйте t o правильный int. Или, прочитайте строку с манипулятором ширины 1 (предполагая, что я правильно помню, что cin придерживается их: P) – quetzalcoatl

+0

'Я бы представил свой мыслительный процесс на этом, но здесь я полностью потерял это.« Сделайте это в любом случае! –

ответ

0

говорят, что у нас есть массив символов, который вы получили от пользователя, и этот массив символов выглядит примерно так: char line[] = {'1', '2', '3', '4', '\0'};, что в основном эквивалентно вводу 1234 в консоли.

тогда было бы возможно, чтобы получить целое значение индексированной позиции в ранее упомянутом массиве, делая что-то вроде этого: int one = line[0] - '0';

это:

char line[] = {'1', '2', '3', '4', '\0'}; 
int one = line[0] - '0'; 
std::cout << one << std::endl; 

Выведет это:

1

 Смежные вопросы

  • Нет связанных вопросов^_^