Я выполнял некоторые упражнения по указателю на C, потому что у меня с ними какие-то проблемы. Я должен изменить некоторые значения в массиве, используя функцию void, но когда я запускаю код, он возвращает мне segfault. Вот код:изменение массива в функции c
#include <stdio.h>
#include <stdlib.h>
void change(int **v , int l) {
for (int i = 0 ; i < l ; i++)
*v[i] = 0 ;
}
int main (int argc , char** argv) {
int *v , l ;
scanf("%d",&l) ;
v = (int*) malloc(sizeof(int)*l) ;
for (int i = 0 ; i < l ; i++)
scanf("%d",&v[i]) ;
change(&v , l) ;
for (int i = 0 ; i < l ; i++)
printf("%d ",v[i]) ;
return 0 ;
}
Причина для использования в качестве аргумента 'int ** v' What ? – BLUEPIXY
'* v [i]' -> '(* v) [i]' – BLUEPIXY