Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
lekcii_1_10 / Лекция 07.pptx
Скачиваний:
68
Добавлен:
21.05.2015
Размер:
261.93 Кб
Скачать

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

версия.

#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] <<' ';

}

void display(int num[])

{

int i;

for(i=0; i<10; i++)

cout << num[i] << ' ';

}

void display(int *num)

{

int i;

for(i=0; i<10; i++)

cout << num[i] << ' ';

}

#include <iostream> using namespace std; void display(int num); int main()

{

int t[10],i;

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

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

return 0;

}

// Функция выводит одно число. void display(int num)

{

cout << num << ' ';

}

#include <iostream> using namespace std;

void cube(int *n, int num); int main()

{

int i, nums[10];

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

cout << "Исходное содержимое массива: ";

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

cube(nums, 10); // Вычисляем кубы значений.

cout << "Измененное содержимое: ";

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

return 0;

}

void cube(int *n, int num)

{

while(num) {

*n = *n * *n * *n;

num--;

n++;

}

}

Результаты выполнения этой программы

Исходное содержимое массива: 12345678910

Измененное содержимое:

 

1

8

27 64

125

216

343 512

729 1000

// Передача функции строки. #include <iostream> #include <cstring> #include <cctype>

using namespace std;

void stringupper(char *str); int main()

{

char str[80];

strcpy(str, "Мне нравится C++");

stringupper(str);

cout << str;

return 0;

}

void stringupper(char *str)

{

while(*str) {

*str = toupper(*str); // Получаем прописной эквивалент одного символа.

str++; // Переходим к следующему символу.

}

}

Результаты выполнения этой

программы

МНЕ НРАВИТСЯ C++

Соседние файлы в папке lekcii_1_10