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

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

Войти
Регистрация
Восстановить пароль
 
NikitaQ
5 / 5 / 1
Регистрация: 10.09.2013
Сообщений: 51
#1

Передать двумерный массив функции - C++

22.11.2013, 23:13. Просмотров 292. Ответов 4
Метки нет (Все метки)

Скажите, пожалуйста, как я могу передать двумерный массив функции, которая с ним поработает, а потом вернет мне его?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
int FirstTeamResult(int sizeOfMyArray,  int game[sizeOfMyArray][sizeOfMyArray], string firstLine) {
    int i,j=0;
    int check=0;
    int index;
    for (i=0; i<firstLine.length(); i++){
        if (firstLine[i] == ' ' && check>1) {
            check++;
            if (i!=index && check>1) {
                game[0][j] = stoi(firstLine.substr(index,i));
                index=i;
                j++;
            }
        }
    }
    return game[sizeOfMyArray][sizeOfMyArray];
}
Делаю так, а он мне ошибку
C++
1
2
3
4
5
Undefined symbols for architecture x86_64:
  "FirstTeamResult(int, int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >)", referenced from:
      _main in main.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.11.2013, 23:13
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Передать двумерный массив функции (C++):

Как передать двумерный массив функции? - C++
Уважаемые форумчане, подскажите пожалуйста как передать двумерный массив в функцию? Как то самому не получается разобраться.... Заранее...

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

Не могу разобраться как передать корректно передать массив из функции в функцию - C++
//--------------------------------------------------------------------------- #pragma hdrstop ...

Передать двумерный массив в функцию - C++
подскажи те как передать двумерный массив в функцию?)

Передать в функцию двумерный массив - C++
void polecln(char *pole,int N,int M) { for (int i = 0; i &lt; 100; i++) { for (int j = 0; j &lt; 100; j++) { pole = ' ';...

Передать двумерный массив в функцию - C++
Доброе утро! Подскажите пожалуйста как можно передать двумерный массив из функции в main(). к примеру функция dataFromFile() в ней...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Angeline
36 / 30 / 2
Регистрация: 21.10.2013
Сообщений: 197
22.11.2013, 23:32 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Передавай не массив, а указатель на массив.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
int FirstTeamResult(int sizeOfMyArray,  int** game[sizeOfMyArray][sizeOfMyArray], string firstLine) {
    int i,j=0;
    int check=0;
    int index;
    for (i=0; i<firstLine.length(); i++){
        if (firstLine[i] == ' ' && check>1) {
            check++;
            if (i!=index && check>1) {
                game[0][j] = stoi(firstLine.substr(index,i));
                index=i;
                j++;
            }
        }
    }
}
Добавлено через 2 минуты
И, насколько я знаю, return не может возвращать массивы.
0
reidaigo
6 / 6 / 0
Регистрация: 16.12.2012
Сообщений: 31
22.11.2013, 23:46 #3
NikitaQ, тип возвращаемого значения у Вас отмечен как INT. В то же время вы пытаетесь вернуть значение типа CHAR в строке "return game[sizeOfMyArray][sizeOfMyArray];", так как в С++ вы указываете на первый элемент массива, а не массив в целом.
0
koldya
0 / 0 / 0
Регистрация: 24.01.2013
Сообщений: 26
22.11.2013, 23:47 #4
Функция не вернет тебе массив, по той причине что работает с массивом на прямую не создавая копий.
0
Abram_TA
1 / 1 / 0
Регистрация: 22.11.2013
Сообщений: 9
22.11.2013, 23:47 #5
Функция не должна возвращать массив, так как при передаче массива фактически ты передаешь адрес для работы с ним. А также в списке параметров функции(там где ты пишешь что она принимает),размер двухмерного массива в первой можно и не указывать, а во второй обязательно.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.11.2013, 23:47
Привет! Вот еще темы с ответами:

Двумерный массив передать в функцию - C++
Нужно просто вывести двумерный массив с помощью функций. Вот что я написал: #include &lt;iostream&gt; #include &lt;conio.h&gt; #include...

Двумерный массив передать через **arr - C++
Добрый день. Поискал похожие темы, кое-что нашел, но у меня проблема в том, что мне нужно передать уже созданный двумерный массив int arr...

Передать двумерный массив указателей в функцию - C++
Здравствуйте) У меня есть класс Tile и структура Room. Примерно они выглядят таким образом: class Tile { private: ...

Не могу передать двумерный массив в функцию - C++
Мне нужно взять имеющийся двумерный массив передать его в функцию, преобразовать и вернуть обратно. Вот код: #include &lt;iostream&gt; ...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
22.11.2013, 23:47
Ответ Создать тему
Опции темы

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