Простой массив массивов и функция, показывающая, как его передать.Я просто добавил ложные значения в массивы, чтобы показать, что что-то было передано функции и что я могу распечатать это обратно.Размер массива 3 является произвольным и может быть изменен на любой другой размер.Каждый массив может иметь различный размер (известный как зубчатый массив).Он показывает три ваших критерия:
Инициализация, Присвоение значений каждому индексу arrayOfArrays
, Функция демонстрирует, как извлечь данные из массива массивов
#include <stdio.h>
void mix_audio(int *arr[3]);
int main() {
int *arrayOfArrays[3];
int vocal[3] = {1,2,3};
int instrumental[3] = {4,5,6};
int mixed_audio[3] = {7,8,9};
arrayOfArrays[0] = vocal;
arrayOfArrays[1] = instrumental;
arrayOfArrays[2] = mixed_audio;
mix_audio(arrayOfArrays);
return(0);
}
void mix_audio(int *arr[3]) {
int i;
int *vocal = arr[0];
int *instrumental = arr[1];
int *mixed_audio = arr[2];
for (i=0; i<3; i++) {
printf("vocal = %d\n", vocal[i]);
}
for (i=0; i<3; i++) {
printf("instrumental = %d\n", instrumental[i]);
}
for (i=0; i<3; i++) {
printf("mixed_audio = %d\n", mixed_audio[i]);
}
}