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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
angryjack93
7 / 3 / 1
Регистрация: 04.11.2012
Сообщений: 218
#1

Передача в функцию - C++

04.05.2013, 17:32. Просмотров 332. Ответов 9
Метки нет (Все метки)

вот есть такие строки кода:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
typedef vector< vector<char> > string_sound;
void sound_func(string_sound &text_sound, int sum_words)
{
    conson = consonants(text_sound[j][i+1], text_sound[j][i+2]);
}
 
int consonants(char symb_2, char symb_3){       //функция проверки на открытость слога
    int conson = 0;
    for(int k = 0; k < 20; k++){
        if(symb_2 == consonants[k]){
            for(int g = 0; g < 20; g++){
                if(symb_3 == consonants[g]){        //послеследующий символ согласный, значит слог закрытый
                    conson = 1;
                    break;
                }
            }
            if(conson != 1){conson = 2; break;}         //послеследующая гласная, значит слог открытый
        }
        if(conson != 0) break;
    }
    return conson;
}
Пишет, что нельзя сравнивать symb_2 и symb_3. Почему и как исправить?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.05.2013, 17:32     Передача в функцию
Посмотрите здесь:

Передача указателя на шаблонную функцию в другую функцию - C++
Пишу тест для нескольких улучшений квиксорта с измерением времени. Функция benchmark принимает итераторы для диапазона элементов, указатель...

Передача ofstream в функцию - C++
Здравствуйте. Подскажите, пожалуйста, как сделать из участка с 54 по 62 строку отдельную функцию (также с 64 по 73, с 75 по 85, с 87 по...

Передача стринга в функцию - C++
Всем привет! Вот возникла такая проблемка: стринг не передается в функцию, Борланд выдает ошибку. Я в си ++ новичок, но думаю, видимо...

Передача массивов в функцию - C++
Определить функции, выполняющие действия в соответствии с заданием.Написать на я зыке С++ Дан одномерный массив, состоящий из N...

Передача структуры в функцию - C++
Всем добрый день. Есть программа разбитая на файлы. как объвить, определить и вызвать функцию в которую передать значения структуры ...

Передача массива в функцию - C++
Всем привет. Есть некий динамический массив arr; Его надо передать в функцию. Я уже пробовал несколько вариантов, но Dev ругается. Как...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
DU
1482 / 1058 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
04.05.2013, 17:44     Передача в функцию #2
можно или нельзя зависит от типа выражения consonants[k].
если для этого типа определен оператор сравнения с чаром - то все ок, если нет то не ок.
ну или преобразования там всякие. из кода непонятно, что за тип у consonants и у consonants[k]

ээээ, похоже consonants - это вообще функция.
ну а в коде это как указатель на функцию. а consonants[k] - даже не знаю что тогда. можно ли так с указателями на фунции делать.
в любом случае код кривой.
angryjack93
7 / 3 / 1
Регистрация: 04.11.2012
Сообщений: 218
04.05.2013, 17:56  [ТС]     Передача в функцию #3
исправил ту ошибку, но появилась другая
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
int consonants(char symb_2, char symb_3){       //функция проверки на открытость слога
    int conson = 0;
    char consonan[20] = "bcdfghklmnprstvwxyz"; 
    for(int k = 0; k < 20; k++){
        if(symb_2 == consonan[k]){
            for(int g = 0; g < 20; g++){
                if(symb_3 == consonan[g]){      //послеследующий символ согласный, значит слог закрытый
                    conson = 1;
                    break;
                }
            }
            if(conson != 1){conson = 2; break;}         //послеследующая гласная, значит слог открытый
        }
        if(conson != 0) break;
    }
    return conson;
}
multiple definition of `consonants(char, char)'
first defined here

Как их убрать?
DU
1482 / 1058 / 45
Регистрация: 05.12.2011
Сообщений: 2,279
04.05.2013, 17:59     Передача в функцию #4
ну несколько определений consonants(char, char).
должно быть одно. что тут непонятного.
angryjack93
7 / 3 / 1
Регистрация: 04.11.2012
Сообщений: 218
04.05.2013, 18:18  [ТС]     Передача в функцию #5
Цитата Сообщение от DU Посмотреть сообщение
ну несколько определений consonants(char, char).
должно быть одно. что тут непонятного.
Я честно ничего не понял
Croessmah
Модератор
Эксперт CЭксперт С++
13053 / 7316 / 815
Регистрация: 27.09.2012
Сообщений: 18,053
Записей в блоге: 3
Завершенные тесты: 1
04.05.2013, 18:19     Передача в функцию #6
Функция случайно не в header'е определена?
angryjack93
7 / 3 / 1
Регистрация: 04.11.2012
Сообщений: 218
04.05.2013, 19:20  [ТС]     Передача в функцию #7
Цитата Сообщение от Croessmah Посмотреть сообщение
Функция случайно не в header'е определена?
нет, просто в отдельном файле, а файл в с расширением .cpp
Croessmah
Модератор
Эксперт CЭксперт С++
13053 / 7316 / 815
Регистрация: 27.09.2012
Сообщений: 18,053
Записей в блоге: 3
Завершенные тесты: 1
04.05.2013, 23:31     Передача в функцию #8
Цитата Сообщение от angryjack93 Посмотреть сообщение
нет, просто в отдельном файле, а файл в с расширением .cpp
Надеюсь, нигде нет такого кода:
C++
1
#include "myfile.cpp"
Добавлено через 53 секунды
Ошибка multiple definition of `consonants(char, char)' означает, что consonants определена несколько раз
angryjack93
7 / 3 / 1
Регистрация: 04.11.2012
Сообщений: 218
05.05.2013, 08:28  [ТС]     Передача в функцию #9
Цитата Сообщение от Croessmah Посмотреть сообщение
Надеюсь, нигде нет такого кода:
C++
1
#include "myfile.cpp"
Добавлено через 53 секунды
Ошибка multiple definition of `consonants(char, char)' означает, что consonants определена несколько раз
Есть такой код но если же убрать, то как файл подключить?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.05.2013, 09:21     Передача в функцию
Еще ссылки по теме:

Передача оператора в функцию - C++
Возможно ли как то передать оператор в функцию?

Передача аргументов в функцию - C++
Что сработает быстрее? void Func(const A &amp;a = A(0, 0, 0)) { } или void Func(A a = A(0, 0, 0))

Передача вектора в функцию - C++
вот например функция void f(vector &lt;int&gt; v) { cout &lt;&lt; v.size(); } в нее нужно передать вектор, сразу же в передаче и...

Передача значения в функцию - C++
Здравствуйте. Сам только начал изучать C++. В общем,никак не могу передать значение login в функцию. #include &lt;iostream&gt; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Croessmah
Модератор
Эксперт CЭксперт С++
13053 / 7316 / 815
Регистрация: 27.09.2012
Сообщений: 18,053
Записей в блоге: 3
Завершенные тесты: 1
05.05.2013, 09:21     Передача в функцию #10
Цитата Сообщение от angryjack93 Посмотреть сообщение
но если же убрать, то как файл подключить?
прототипы функций в заголовочный файл и уже заголовочный файл подключайте. Или в каждом cpp, где нужны эти функции, описывайте их прототипы.
Yandex
Объявления
05.05.2013, 09:21     Передача в функцию
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru