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

Функция, возвращающая массив - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Создать класс StraightLine на С++ http://www.cyberforum.ru/cpp-beginners/thread413349.html
Создать класс StraightLine для представления прямой в плоскости. В качестве полей задаются числа a,b,c являющиеся коэффициентами в уравнении ax+by+c=0. Реализовать операции сдвига прямой вверх/вниз, проверки двух прямых на ортогональность,параллельность,пересечение и операцию нахождения угла между двумя прямыми.
C++ Аргументы функции по умолчанию Допустим у нас имеется некоторая функция, некоторые аргументы которой специфицируются как аргументы, допускающие значения по умолчанию. Верно ли что при всех вызовах такой функции для данных аргументов, когда их значения не указываются в вызове, всегда будут использованы одни и те же значения? http://www.cyberforum.ru/cpp-beginners/thread413348.html
Задача с классами C++
Задание- Решением задачи является класс с закрытыми полями (private), где операции реализуются как методы класса. Помимо указанных в задании операций, обязательно должны быть реализованы следующие методы: -конструктор реализации с аргументами по умолчанию; -метод инициаоизации set_val; -метод заполнения полей объекта с клавиатуры read; -метод вывода данных объекта на экран show. В функции...
C++ Создать класс Pair на С++
Создать класс Pair (пара вещественных чисел);определить методы изменения полей и вычисления произведения чисел. Определить производный класс ectangle (прямоугольник)с полями-сторонами. Определить методы вычисления примера и площади прямоугольника.
C++ Форматированный вывод. Как??? http://www.cyberforum.ru/cpp-beginners/thread413329.html
Здравствуйте. База данных содержит поле серийный номер (6 цифр) Проблема с тем, что если первыми записать нули, то они не выводятся, а должно быть всегда 6 цифр. Пишу на С. Подскажите, как обыграть такую проблему. В программе выполняется следующая проверка GetDlgItemText(hDlg,ADD_CARCASS,s,8); if(strlen(s)!=6) { MessageBox(hDlg," ...
C++ Объект osteram& или как его вывести в переменную ? Здравствуйте Объект osteram& или как его вывести в переменную ? cin... cout... printf... scanf А вот как же вывети поток osteram& в массив строк например ? Просто в win32 api использовали (где я читаю) wsprintf. Но это же не справедливо! Это же C, а не C++. Подскажите пжл:drink: подробнее

Показать сообщение отдельно
mes
Сообщений: n/a

Функция, возвращающая массив - C++

21.12.2011, 10:16. Просмотров 824. Ответов 2
Метки (Все метки)

Нужно вернуть из функции массив.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
int F(int a,int* b[])
{
    for(int i=0;i<a;i++) *b[i]++;
    for(int i=0;i<3;i++) printf("%d\n", b[i]);
    return 0;
}
 
int _tmain(int argc, _TCHAR* argv[])
{    
    int A[]={1,2,3};
        F(3,&A);
        return 0;
}
компилятор ругается: "error C2664: F: невозможно преобразовать параметр 2 из "int (*)[3]" в "int *[]"

так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
int F(int a,int* b[])
{
    for(int i=0;i<a;i++) *b[i]++;
    
    for(int i=0;i<3;i++) printf("%d\n", b[i]);
    return 0;
}
 
int _tmain(int argc, _TCHAR* argv[])
{    
    int A[]={1,2,3};
        int* b;
    b=&A[0];
        F(3,&b);
        return 0;
}
и так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
int F(int a,int* b[])
{
    for(int i=0;i<a;i++) *b[i]++;
    
    for(int i=0;i<3;i++) printf("%d\n", b[i]);
    return 0;
}
 
int _tmain(int argc, _TCHAR* argv[])
{    
    int A[]={1,2,3};
        int* b[3];
    b[0]=&A[0];
    for(int i=0;i<3;i++)b[i]=&A[i];
    
        F(3,b);
        return 0;
выводит мусор...

Собственно как надо?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru