Доброго времени суток! Как и писал выше, в топиках, начал изучение ANSI C. Правильно ли я понимаю, что в функции swap я объявляю аргументам указатели, затем в программе передаю в функцию адреса переменных, а в самой функции беру значения, находящиеся по адресу этих переданных аргументов, и меняю их местами. Так?
[code=c]
include <stdio.h>
main()
{
int a, b;
a=5;
b=10;
printf(«Before:\n»);
printf(«a=%d\n»,a);
printf(«b=%d\n»,b);
/*
Посылаю адреса аргументов a, b
*/
swap(&a,&b);
printf(«After swap:\n»);
printf(«a=%d\n»,a);
printf(«b=%d\n»,b);
return 0;
}
int swap(int* x, int* y)
{
/*
Меняю значения аргументов, находящихся по адресу переданных аргументов
*/
int temp;
temp=*x;
*x=*y;
*y=temp;
return 0;
};
[/code]
Похожие темы
- Форум что это за конструкция (язык С) (2005)
- Форум Запутался с указателями. Си (2008)
- Форум Определение типа. Как реализовать? (2005)
- Форум Потестируем инкремент! (2005)
- Форум проблема массивом указателей (2008)
- Форум C, почему теряются сигналы? (2005)
- Форум [C] Преобразование указателей на структуры (2009)
- Форум указатели и аргументы на Си (2004)
- Форум [нубас] gcc и тестовый пример (2010)
- Форум scanf (2005)