Главная Случайная страница


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 4. Как сделать так, чтобы вас уважали и ценили? Как сделать лучше себе и другим людям Как сделать свидание интересным?


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Переменной num меняются местами. Эта операция возможна лишь потому, что как переменная





Num, так и массив ch разделяют одну и ту же область памяти.

1.

Вызов функций с указателями В предыдущем примере необязательно было использовать переменную р. Вместо нее при

вызове функции f() достаточно использовать переменную i, предварив ее оператором "&" (при

Этом, как вы знаете, генерируется адрес переменной i). После внесения оговоренного изменения

Предыдущая программа приобретает такой вид.

// Передача указателя функции -- исправленная версия.

#include <iostream>

Using namespace std;

void f (int *j);

Int main()

{

Int i;

f(&i);

cout << i;

Return 0;

}

void f (int * j)

{

*j = 100; // Переменной, адресуемой указателем j, присваивается число 100.

}

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

Некоторой операции в функции, которая использует указатель, эта операция фактически

Выполняется над переменной, адресуемой этим указателем. Таким образом, такая функция

Может изменить значение объекта, адресуемого ее параметром.

Во-первых, параметр можно объявить как массив, тип и размер которого

совпадает с типом и размером массива, используемого при вызове функции. Этот вариант

Объявления параметра-массива продемонстрирован в следующем примере.

#include <iostream>

Using namespace std;

void display(int num[10]);

Int main()

{

int t[10], i;

for(i=0; i<10; ++i) t[i]=i;

display(t); // Передаем функции массив t.

Return 0;

}

// Функция выводит все элементы массива.

void display(int num[10])

{

Int i;

for(i=0; i<10; i++) cout << num[i] <<' ';

}

Несмотря на то что параметр num объявлен здесь как целочисленный массив, состоящий из

10 элементов, С++-компилятор автоматически преобразует его в указатель на целочисленное

Значение. Необходимость этого преобразования объясняется тем, что никакой параметр в

Действительности не может принять массив целиком. А так как будет передан один лишь







Date: 2016-07-25; view: 315; Нарушение авторских прав



mydocx.ru - 2015-2024 year. (0.005 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию