Я хочу сделать FUNCTION, который вычисляет размер переданного массива.
Я передам массив в качестве входных данных, и он должен вернуть его длину. Я хочу функцию
int ArraySize(int * Array /* Or int Array[] */)
{
/* Calculate Length of Array and Return it */
}
void main()
{
int MyArray[8]={1,2,3,0,5};
int length;
length=ArraySize(MyArray);
printf("Size of Array: %d",length);
}
Длина должна быть 5, поскольку она содержит 5 элементов, хотя размер 8 (Даже 8 будет делать, но 5 будет отлично)
Я пробовал это:
int ArraySize(int * Array)
{
return (sizeof(Array)/sizeof(int));
}
Это не будет работать, так как "sizeof(Array)
" будет перенастроить размер Int Pointer.
Это "sizeof
" работает только в том случае, если вы находитесь в одной и той же функции.
На самом деле я вернулся к C после нескольких дней с С#. Поэтому я не могу вспомнить (и Missing Array.Length()
)
Привет!