Mr Nobody
BANNED | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору У меня вот такой вопрос. В самом начале програмирования на Си я столкнулся с проблемкой передачи массива в функцию. Конечно, вот такая программка Код: #include <stdio.h> unsigned int array_size(int arg[]) { return sizeof(arg); } int array[10]; int main() { printf("Size of array: %u\n", sizeof(array)); printf("and into function: %u\n", array_size(array)); return 0; } | меня вначале удивился. Но потом я все это понял и принял. В функцию передается адрес массива, а не от сам. Размер массива также надо передовать параметром в функцию. Прошло время. Я хорошо понял указатели. Когда я встретился с матрицей, я поступил согластно своему опыту. Матрицу описал как указатель на указатель и передал размеры. Получил я, естественно, пшик. Потом я освоил вот такой код. Код: float left[4][4] = {{1.0f, 1.0f, 1.0f, 1.0f}, {1.0f, 2.0f, 3.0f, 4.0f}, {1.0f, 3.0f, 6.0f, 10.0f}, {1.0f, 4.0f, 10.0f, 20.0f}}; float *p_left[4] = {(float*)&left[0], (float*)&left[1], (float*)&left[2], (float*)&left[3]}; | В функцию я передавал, естественно p_left. Так вот, может кто знает способ, который позволяет не пользоваться p_left |