правильный способ изменить значения указателей c
Извините, еще один вопрос об указателе C ... У меня есть функция func (), которая сортирует массив, а затем получает самые большие и самые маленькие целые числа. Я пытаюсь поместить их в переменные-указатели в main (), но значения верны только внутри функции func (). Я не понимаю почему :(
#include <stdio.h>
void func(int arr[], int *s, int *l, int n){
int i = 1;
for(; i < n; i++){
int temp = arr[i];
int n = i;
while( n > 0 && arr[n-1] > temp){
arr[n] = arr[n-1];
n--;
}
arr[n] = temp;
}
l = &arr[n-1];
s = &arr[0];\
printf("%d %d\n",*l,*s);
}
int main(void){
int arr[] = {1,2,9,3,58,21,4};
int *s, *l;
int size = 7;
func(arr,s,l,size);
printf("%d %d\n",*l,,*s);
}