Использование указателей в функциях и указатели на функции

Параметрами функций могут быть не только переменные базового типа, но и массивы. Как известно размер массива должен быть определен до его использования. Поэтому, в функциях используются массивы с явным заданием размера, либо с параметрами несущими информацию о размере. Следует запомнить, что если формальными параметрами функции являются массивы, то аргументы передаются в виде указателей, т.е. происходит, так называемая, передача по ссылке..

Рассмотрим задачу умножения двух векторов.

#include <iostream>

#include <windows.h>

Using namespace std;

double multVect(int n,double x[],double y[]){

/*скалярное произведение*/

double z=0;

for(int i=0;i<n;i++) z=z+x[i]*y[i];

Return z;

}

void main(){

SetConsoleOutputCP(1251);

double u[]={1.0, 2.0, 3.0}, v[]={4.0, 5.0, 6.0};

cout<<"Произведение векторов="<<multVect(3,u,v);

}

 

Иногда возвращаемое значение функции должно быть указателем. Рассмотрим программу на примере объединения массивов.

 

#include <iostream>

#include <windows.h>

Using namespace std;

//объявляем и описываем фунцию

double *connectVect(int n, double* x, int m, double* y){

Int i;

double *z=new double[n+m]; //выделяем память

for(i=0;i<n;i++) z[i]=x[i]; //заносим в память

for(i=n;i<n+m;i++) z[i]=y[i-n];

Return z;

}

void main(){








Дата добавления: 2015-07-30; просмотров: 682;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.004 сек.