.
Microsoft visual c++ 2008. Урок 18. Практическое использование указателей.
Автор megabax   
06.07.2012 г.
New Page 1

Microsoft visual c++ 2008. Урок 18. Практическое использование указателей.

Нижеприведенная программа меняет две переменные местами:

 

#include "stdafx.h"

#include <stdio.h>

#include <conio.h>

 

//Функция, которая меняет переменные местами

void exch(int *a, int *b)

{

       int i=*a;

       *a=*b;

       *b=i;

}

 

 

int _tmain(int argc, _TCHAR* argv[])

{

       int c=12;

       int d=120;

       printf("Before excande c=%d, d=%d\n",c,d);

       exch(&c,&d);

       printf("After excande c=%d, d=%d\n",c,d);

       _getch();

       return 0;

}

Вот протокол работы этой программы:

Microsoft visual c++ 2008. Урок 18. Практическое использование указателей.

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

      exch(&c,&d);

Когда мы пишем

 *a=*b;

мы значению в переменной по адресу *a присваиваем значение, расположенное по адресу *b;

Последнее обновление ( 16.11.2013 г. )