У меня проблема с массивом/указателем. Я создал массив int myArray
размера 3. Используя функцию, я хочу заполнить этот массив. Итак, я вызываю эту функцию, давая ей адрес &myArray
массива. Правильно ли синтаксис для объявления функции?? Я передаю указатель на массив, поэтому функция может заполнить элементы массива один за другим. Но почему-то мой массив не заполнен правильными значениями. В Java я мог бы просто передать массив методу и вернуть массив. Любая помощь приветствуется! Благодаря!Передача массива на функцию. Правильное использование указателей?
#include <stdio.h>
int myArray[3];
void getSmth(int *anArray[]);
int main(void)
{
getSmth(&myArray);
}
void getSmth(int *anArray[])
{
for(i=0...)
{
*anArray[i] = tmpVal[i];
}
}
Обратите внимание, что 'sizeof' трюк работает только на реальных массивах (' целочисленного массива [] '), а не на вещи, которые распадались на указатели ('int * array'). Это означает, что вы можете использовать sizeof для получения длины после построения массива, но затем вы должны передать длину в качестве дополнительного аргумента. – hugomg