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

Как вернуть сразу 2 значения массива в функции? - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 15, средняя оценка - 4.67
aleksand
21 / 9 / 2
Регистрация: 18.06.2011
Сообщений: 185
30.11.2012, 22:44     Как вернуть сразу 2 значения массива в функции? #1
Собственно дан у меня например массив "aa", где l-левая граница, а r-правая. При выполнении кода мне надо сразу вернуть эти два стоящих рядом друг с другом значения и вывести их на экран. Как это сделать? Мой код возвращает только str, a str+1 не могу возвратить. Помогите пожалуйста.
C
1
2
3
4
 if (str[l] == str[r] && l + 1 == r)
   {
     return str, str +1;
   }
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
remarkes
300 / 223 / 13
Регистрация: 01.07.2011
Сообщений: 809
Записей в блоге: 1
30.11.2012, 23:16     Как вернуть сразу 2 значения массива в функции? #2
aleksand, ты можешь возвратить из функции с помощью return только одно значение. Это во-первых.
Во-вторых, в приведенном коде нет смысла возвращать два значения. Судя по твоему условию: если ты проверяешь на равенство два соседних элемента массива, то зачем тебе их возвращать оба, когда они равны? Ведь достаточно вернуть одно из них.
Третье: ты возвращаешь "str", а он у тебя массив, а не переменная. Таким образом, ты возвращаешь не сам массив (или элемент), а указатель на первый элемент массива (с индексом ноль). Таким образом, часть строки str + 1 не имеет смысла.
Sor
35 / 35 / 0
Регистрация: 24.11.2011
Сообщений: 309
30.11.2012, 23:17     Как вернуть сразу 2 значения массива в функции? #3
так нельзя возвращать, насколько мне известно.

Добавлено через 46 секунд
оп опоздал
I.M.
 Аватар для I.M.
564 / 547 / 5
Регистрация: 16.12.2011
Сообщений: 1,389
30.11.2012, 23:34     Как вернуть сразу 2 значения массива в функции? #4
aleksand, можно возвращать структуру, std:: pair или использовать ссылки на аргументы функции
aleksand
21 / 9 / 2
Регистрация: 18.06.2011
Сообщений: 185
30.11.2012, 23:45  [ТС]     Как вернуть сразу 2 значения массива в функции? #5
Всем спасибо, вопрос более не актуален.
go
Эксперт C++
3582 / 1362 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
30.11.2012, 23:56     Как вернуть сразу 2 значения массива в функции? #6
aleksand, структуру напиши свою, а если значения одного типа, или можно в куче память выделить и вернуть указатель.
Yandex
Объявления
30.11.2012, 23:56     Как вернуть сразу 2 значения массива в функции?
Ответ Создать тему
Опции темы

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