Авторизация
Забыли пароль? Введите ваш е-мейл адрес. Вы получите письмо на почту со ссылкой для восстановления пароля.
После регистрации вы сможете задавать вопросы и писать свои ответы, получая за это бонусы. Все остальные функции на сайте доступны без регистрации.
Вы должны войти или зарегистрироваться, чтобы добавить ответ и получить бонусы.
Для передачи двумерного массива в функцию на языке C, можно использовать указатель на указатель. Вот пример кода:
«`c
#include
void printArray(int** arr, int rows, int cols) {
for (int i = 0; i < rows; i++) { for (int j = 0; j < cols; j++) { printf("%d ", arr[i][j]); } printf("n"); } } int main() { int rows = 3; int cols = 4; // Выделение памяти для двумерного массива int** arr = (int**)malloc(rows * sizeof(int*)); for (int i = 0; i < rows; i++) { arr[i] = (int*)malloc(cols * sizeof(int)); } // Инициализация массива int count = 1; for (int i = 0; i < rows; i++) { for (int j = 0; j < cols; j++) { arr[i][j] = count++; } } // Вызов функции printArray(arr, rows, cols); // Освобождение памяти for (int i = 0; i < rows; i++) { free(arr[i]); } free(arr); return 0; } ``` В этом примере функция `printArray` принимает двумерный массив `arr`, а также количество строк `rows` и столбцов `cols`. Внутри функции происходит обход массива и вывод его элементов на экран. В функции `main` выделяется память для двумерного массива, инициализируется и передается в функцию `printArray`. После использования память освобождается с помощью функции `free`.