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

Строки с++ - C++

Восстановить пароль Регистрация
 
A7X
0 / 0 / 0
Регистрация: 13.11.2013
Сообщений: 15
05.06.2014, 22:05     Строки с++ #1
При прогоне игнорирует 16-ю строку
Небольшая часть программы:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
    char c = getchar();
 
    int str [50] = {0};  // Результирующая строка
    int k = 0;
 
    while ( c != '#'){ 
                         // Ind1  - ф-я, определяющая, является ли символ цифрой
 
        if ( Ind1(c) == 1){               // Запись числа в отдельную строку и перевод в ascii
            char string [10] = {0,}; 
            char *s = string;
            do{
                *s = c;
                s++;
                std::cout << c << std::endl;
                c = getchar();                             // можно ли так записать?  (!!!)
            } while ((Ind1(c) == 1) && (c != '#'));
            str[k] = atoi(string);
            k++;
        }
 
        if ( (c == '+') || (c == '-') || (c == '*') || (c == '/') ){
                
                                --------------------
 
            
        c = getchar();
    }
Спасибо)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Tulosba
:)
Эксперт C++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
05.06.2014, 22:16     Строки с++ #2
A7X, в чем вопрос-то?
A7X
0 / 0 / 0
Регистрация: 13.11.2013
Сообщений: 15
05.06.2014, 22:19  [ТС]     Строки с++ #3
Игнорирует 16ю строку (я написала) т.е. при прогоне не считывает с консоли в эту переменную
Tulosba
:)
Эксперт C++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
05.06.2014, 22:30     Строки с++ #4
Цитата Сообщение от A7X Посмотреть сообщение
Игнорирует 16ю строку (я написала) т.е. при прогоне не считывает с консоли в эту переменную
Ну, во-первых, getchar возвращает int. Во-вторых, проверяйте код возврата. Игнорировать функцию никак не должно, может просто возвращать не то, что Вы ожидаете.
A7X
0 / 0 / 0
Регистрация: 13.11.2013
Сообщений: 15
05.06.2014, 22:54  [ТС]     Строки с++ #5
Tulosba, извините, я разобралась) нужно было добавить условие if ( c == '#'){ break;}, т.к. там считывается переход на новую строку как символ)
Yandex
Объявления
05.06.2014, 22:54     Строки с++
Ответ Создать тему
Опции темы

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