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

Представление кода в виде функции - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Длинная арифметика (найти остаток при делении на 7) http://www.cyberforum.ru/cpp-beginners/thread749831.html
Уважаемые программисты! Задача на длинную арифметику (никогда такую не решал, потому хочу разобраться. Математически понимаю, а как написать код не знаю). Сама задача такова: нужно найти остаток...
C++ Двумерные массивы. Использование динамически распределяемой памяти В с++ Создать квадратную матрицу целых чисел и выполнить ее обработку согласно заданию, указанному ниже. Выполнить задание с такими дополнительными условиями: - размер матрицы вводится с... http://www.cyberforum.ru/cpp-beginners/thread749828.html
C++ Сложение двух чисел в Двоично-десятичной системе счисления
Доброго времени суток, может есть ли у кого уже готовый код? или же можете носом ткнуть на ссылку, bcd - двоично десятичная система, весь инет перерыл подобных сорсов не нашел Суть программы:...
C++ Одна из первых задач Страуструпа. Программа по переводу дюймов в сантимы и обратно
Всем бывалым наверное программа по переводу дюймов в сантимы и обратно проста наверное как мелодия кузнечик, а вот таким как я пока еще лунная соната, ну да ладно с предисловием программу как сумел...
C++ Как добиться возможности компилить с поддержкой нового стандарта в Code Blocks (MinGW)? http://www.cyberforum.ru/cpp-beginners/thread749800.html
Народ как добиться возможности компилить с поддержкой нового стандарта ?
C++ Построить таблицу истинности и определить выполнимость формулы: Значения Х1,Х2,Х3 одинаковы для всех вариантов X1 X2 X3 0 0 0 0 0 1 Вот моё задание 7) Х1*Х2*Х3 + Х1*Х2*Х3 + Х1*Х2*Х3 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 подробнее

Показать сообщение отдельно
norin
18 / 16 / 3
Регистрация: 10.03.2011
Сообщений: 52
30.12.2012, 00:19
Проблема тут:
113 int *a; // объявлен указатель, но память под массив не выделена
114 cinA (a); // в функции предполагается что память под массив уже(!) выделена и едёт простое заполнение массива числами

Можно выделить память до вызова функции:
C++
1
2
3
4
5
6
7
8
...
void cinA (int * a, int  n); 
....
int n = 10; // или ввод n с клавиатуры 
int* a = new int[n]; // объявляем указатель, выделяем память 
cinA (a, n); // до этого переделали cinA(---),
//так что бы она принимала два аргумента: указатель на массив и его размерность
....
Можно так:
C++
1
2
3
4
5
6
7
8
9
10
int * cinA (int  n)
{
int * a = new int[n];
....
return a; // возвращаем указатель на сформированный в функции массив
}
....
int n = 10; // или ввод n с клавиатуры 
int* a = cinA (n);  
....
Последний вариант предпочтительней.
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru