Zamiana wskaźników

0

Witam,
mam do napisania program, w którym funkcja przyjmuje wskaźniki na wskaźniki i zamienia wskazywaną wartość wskaźnika pierwszego na wskaźnik trzeci i odwrotnie.
Problem tkwi w tym, że nie bardzo wiem jak to zrobić...
Mam taki kod:

 #include <stdio.h>

int fun(unsigned char **wsk1, unsigned char *wsk2, unsigned char **wsk3)
{
	
	// i tu nie wiem jak zamienić te wskaźniki...
}

int main() {
	unsigned char a,b,c;
	printf("Podaj trzy liczby: \n");
	scanf("%c %c %c", &a,&b,&c);
	fun(&a,&b,&c);
	return 0;
}

Dzięki z góry za pomoc ;)

0

Nie wiem po co tam jest wsk2 ani jaki sens to ma, ale to jest to co opisałeś:

#include <stdio.h>
 
int fun(unsigned char **wsk1, unsigned char *wsk2, unsigned char **wsk3)
{
    unsigned char* tmp = *wsk1;
    *wsk1 = *wsk3;
    *wsk3 = tmp;
}
 
int main() 
{
    unsigned char a,b,c;
    printf("Podaj trzy litery: \n");
    scanf("%c %c %c", &a,&b,&c);
    unsigned char* ptrA = &a;
    unsigned char* ptrB = &b;
    unsigned char* ptrC = &c;
    printf("Przed: %c %c %c\n", *ptrA, *ptrB, *ptrC);
    fun(&ptrA,&ptrB,&ptrC);
    printf("Po: %c %c %c\n", *ptrA, *ptrB, *ptrC);
    return 0;
}
0

Bo to jest tak jakby kontynuacja pierwszego zadania w ktorym miały być pobrane trzy liczby i ustawione na nie wskazniki, a w kolejnym ma zamienic wskaznik pierwszy na trzeci i trzeci na pierwszy. Treści pierwszego zadania nie podawałem a kod skopiowałem, dobra dzięki, już czaję :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1