Как получить два целых числа, разделенных пробелом в char []?
-
28-10-2019 - |
Вопрос
Я буду получать такую строку чисел.
родовое словоДва целых числа, разделенных пробелом.
На выходе будет 57.
Я пробовал использовать,
родовое словоНо каждый раз, когда я запускаю его, только a является правильным, а b - нет.
Какие еще функции могут мне помочь?Или это просто проблема с кодированием?
В ответах я уже получил два предложения.
родовое словоИ
родовое словоСпасибо за уделенное время.Мы будем благодарны за дополнительные методы.
Решение
Проблема заключается в вашем вводе из cin.Использование кода operator>>
разделяется пробелами.Таким образом, если пользователь наберет «12 45», будет извлечено только 12.Вместо этого вы можете использовать getline:
Другие советы
Попробуйте это:
родовое словоПроблема в том, что в вашем коде:
родовое слово Читает только одно слово, разделенное пробелами (например, 12), в строку numbersstream
.Таким образом, когда вы строите кодовый кодовый код, в нем фактически содержится только одно число.Следовательно, он устанавливает только «a», а «b» остается неопределенным.
Вы можете сделать это по-своему, но вам действительно нужно прочитать всю строку в строке:
родовое словоВы читаете только до первого символа пробела с
родовое словоСледующее будет считывать все в строку, пока не будет прочитан символ разделителя ('\ n') или конец файла.Разделитель отбрасывается.
родовое слово