определить размер массива, если он передан функции
Можно ли определить размер массива, если он был передан другой функции (размер не передан)? Массив инициализируется как int array [] = {XXX} ..
Я понимаю, что это невозможно сделать sizeof, поскольку он будет возвращать размер указателя .. Причина, по которой я спрашиваю, потому что мне нужно запустить цикл for внутри другой функции, где передается массив. Я попробовал что-то вроде:
for( int i = 0; array[i] != NULL; i++) {
........
}
Но я заметил, что в ближнем конце массива array [i] иногда содержит значения мусора, например 758433, что не является значением, указанным при инициализации массива.