есть классическая ф-ия которую все когда-то писали при знакомсте с указателями: Обмен значениями двух чисел
void swp(int* a, int* b)
{
int c = *a;
*a = *b;
*b = c;
}
Хочу сделать то же самое но изменяя указатели
void swp(int* a, int* b)
{
int *c = a;
a = b;
b = c;
}
Значения указателей меняются внутри ф-ии, т.е. там обмен происходит как я хочу. Но, после выхода из функции все возвращается к начальному состоянию и обмен значениями не происходит. Думаю у меня непонимание архитектуры, или того как работает стек при выходе из ф-ии. Почему указатели возвращяются на свои исходные значения?