Odpowiedź :
Odpowiedź:
#include <stdio.h>
//zadanie 1
int *fun1(int *a, int *b) { //funkcja przyjmuje dwa wskaźniki
return *a < *b ? a : b; //sprawdzamy za pomocą deferencji (operator *), który wskaźnik wskazuje na mniejszą z liczb i zwracamy wskażnik na nią (wskaźnik, więc bez * już)
}
//zadanie 2
void fun2(int *a, int *b){ //funkcja przyjmuje dwa wskaźniki
*a += 10; // zwiększamy o 10 obie liczby wskazywane przez te wskaźniki
*b += 10;
}
int main() {
int a = 4;
int b = 5;
printf("%p\n", fun1(&a, &b)); //wyświetlamy adres mniejszej z liczb (jeśli byśmy chcieli wyświetlić wartość jej, to powinniśmy użyć dereferencji)
fun2(&a, &b); // używamy &, bo przekazujemy wskaźniki na te liczby, a nie same liczby
printf("%d\n", a);
printf("%d\n", b);
return 0;
}
Wyjaśnienie:
Wyjaśnienie po //, jak coś nadal niejasne, to pytaj