Мне нужно сделать простую вещь, которую я делал много раз в Java, но я застрял в C (чистый C, а не C ++). Ситуация выглядит так:
int *a;
void initArray( int *arr )
{
arr = malloc( sizeof( int ) * SIZE );
}
int main()
{
initArray( a );
// a is NULL here! what to do?!
return 0;
}
У меня есть некоторая «инициализирующая» функция, которая ДОЛЖНА присваивать данный указатель некоторым выделенным данным (не имеет значения). Как я должен дать указатель на функцию для того, чтобы этот указатель был изменен, а затем может быть использован дальше в коде (после того, как вызов функции вернется)?