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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Работа с графикой в ВС 3,1 http://www.cyberforum.ru/cpp-beginners/thread35842.html
Народ помогите написать фрагмент программы связанная с графикой,а мучусь, не выходит. Мне надо вывести график на осях координат ХУ. Оси должы содержать координатные деления( 0..1..2...3 итд) - ну это вроде я сделал. Главная проблема - вывод функции на координатную ось! Мож кто знает или есть у кого похожие, примеры помогите плз!
C++ Indefenid Direction (не пойму ошибки) Здраствуйте,дорогие форумчане))) Подскажите пожалуйста,я в главной процедуре main вызываю функцию после определения и заполнения массивов: //Первый массив double *Massiv_for_Diagonal; Massiv_for_Diagonal = new double ; cout << "\nThis is vector of main diagonal's elements:\n"; for (int i=0;i<strok;i++){ http://www.cyberforum.ru/cpp-beginners/thread35840.html
C++ Ошибка библиотеки graphics.h в Code::Blocks
Всем привет! Я работаю в CodeBlock когда пишу #include<graphics.h> все время выдает ошибку. Подскажите пожалуйста в чем дело!
Максимальный елемент массива C++
Программа неправильно находит максимальный елемент. И иногда при генерации нового массива просто закрывается сама. Что здесь не так? Немогу найти ошибку. #include <iostream.h> #include <conio.h> #include <stdlib.h> #include <fstream.h> #include <stdio.h> #include <string.h>
C++ BSCMAKE: error BK1506 : cannot open file '.\Debug\RESDlg.sbr': No such file or directory http://www.cyberforum.ru/cpp-beginners/thread35829.html
--------------------Configuration: RES - Win32 Debug-------------------- Compiling... RESDlg.cpp c:\program files\microsoft visual studio\myprojects\res\resdlg.cpp(197) : fatal error C1010: unexpected end of file while looking for precompiled header directive Error executing cl.exe. RESDlg.obj - 1 error(s), 0 warning(s) Добавлено через 15 минут 37 секунд и ещё вторую пж
C++ Задача по одномерному массиву Всем привет. Помогите пожалуйста написать программу для с++ нужно осуществить: 1.ввод символьного массива от 40 до 60 2.подсчёт кол-ва элементов массива и вывод его на экран 3.нахождение количества рядомстоящих элементов, например ab, и вывод количества повторений на экран к сожалению немогу составить даже начало программы =( Добавлено через 13 часов 35 минут 7 секунд Получилось кое-как... подробнее

Показать сообщение отдельно
accept
4817 / 3237 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
23.05.2009, 12:20     Передать динамический массив в функцию
Цитата Сообщение от toxxin
Имеется динамический массив, который надо передать в функцию. Число элементов массива заранее не известно. Какие есть варианты на этот счет??
всегда передаётся только адрес первого элемента массива (даже если укажешь размер, он не будет передан, потому что в функцию пойдёт только копия адреса начала массива)

Код
    func(arg);
это &arg[0], дальше, внутри функции через этот адрес будет получаться доступ к любому элементу массива
если не контролировать длину, можно вылезти за край массива, в запрещённую память и получится segmentation fault (особенно когда в него пишешь)
так что, можно пометить конец массива в нём самом, или передать его размер рядом через sizeof
Код
    func(arg, sizeof arg / sizeof arg[0]);
передаст количество элементов в массиве (общее число байт, поделённое на число байт в одном элементе)
 
Текущее время: 08:51. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru