cplus-plus.ru logo
Мы переехали на cplus-plus.ru
Главная страница В закладкиО сайтеКарта сайта
Добавить в закладки

Меню сайта

Полезные ссылки

Наша рассылка
Подписаться на рассылку
"C++ : cplus-plus.ru :
Рассылка статей C++"


Друзья сайта
alsproject.ru Выбор выходного разделительного конденсатора

Приветствую Вас, Гость · rss 03-Авг-2020, 14:41
Главная » Статьи » Статьи по C++

Одномерный массив в C++ как параметр
Чтобы передать массив в функцию, ей надо сообщить адрес начала массива и количество его элементов. Это можно сделать при помощи двух параметров.

Пример. Определить функцию, которая возвращает сумму всех элементов массива.

float sum (float а[], int n)
{
float s = 0;
for (int i = 0; i < n; i++)
 s += a[i] ;
return s;
}

Задать указатель на начальный элемент можно по-разному. Следующие два заголовка равносильны заголовку функции из предыдущего примера:

float sum(float *a, int n);
 float sum(float a[1000], int n);

Замечание. Поскольку C++ не предусматривает проверку выхода за границу массива во время выполнения программы, компилятор просто игнорирует константу в квадратных скобках в параметре-массиве.

Рассмотренный способ передавать массив в функцию не единственный. Можно, например, сделать это при помощи двух указателей — на первый и на последний элемент массива.

float sum (float *begin, float *end);

Впрочем, для программиста удобнее, если второй параметр указывает не на последний элемент массива, а на «элемент», следующий за последним.

float sum (float *begin, float *end)
{
float s = 0;
while (begin != end)
s += *(begin++);
return s;
}
...
float m[100] = {1,2};
cout « sum(m, m + 100) « endl;

Источник: http://www.cplus-plus.ru
Категория: Статьи по C++ | Добавил: FazaNaka (12-Окт-2010)
Просмотров: 309 | Рейтинг: 0.0/0