Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #define _CRT_SECURE_NO_WARNINGS
- #include <stdio.h>
- #include <iostream>
- void f1(int*);
- void f2(int &);
- void f3(int);
- void show(int);
- int main() {
- setlocale(0, "Russian");
- puts("f1 - передача по указателю");
- puts("f2 - передача по ссылке");
- puts("f3 - передача по адресу");
- puts("");
- int x = 100;//инициализируем переменную
- int* ptr_x = &x;//инициализируем указатель
- int& link = x;//инициализируем ссылку
- show(x);
- f1(ptr_x);
- show(x);
- f1(&x);
- show(x);
- f2(x);
- show(x);
- f3(x);
- show(x);
- system("pause");
- return 0;
- }
- void f1(int* ptr) {//передача по указателю
- static int counter_1 = 1;
- *ptr += 10;
- printf("-------------------------\n");
- printf("call %d f1\n", counter_1);
- printf("f1: value is %d\n", *ptr);
- printf("f1: pointer is %d\n", ptr);
- printf("-------------------------\n");
- counter_1++;
- }
- void f2(int &var) {//передача по ссылке
- static int counter_2 = 1;
- var += 2;
- printf("-------------------------\n");
- printf("call %d f2\n", counter_2);
- printf("f2: value is %d\n", var);
- printf("f2: pointer is %d\n", &var);
- printf("-------------------------\n");
- counter_2++;
- }
- void f3(int var) {//передача по значению
- static int counter_3 = 1;
- var += 1;
- printf("-------------------------\n");
- printf("call %d f3\n", counter_3);
- printf("f3: value is %d\n", var);
- printf("f3: pointer is %d\n", &var);
- printf("-------------------------\n");
- counter_3++;
- }
- void show(int var) {
- printf("var is %d\n", var);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement