En C: ¿Cómo se encuentra el número de elementos en una matriz de estructuras, después de enviarlo a una función?C: encontrar el número de elementos en una matriz []
int main(void) {
myStruct array[] = { struct1, struct2, struct3, struct4, struct5, struct6 };
printf("%d\n", sizeof(array));
printf("%d\n", sizeof(array[0]));
f(array);
}
void f(myStruct* array) {
printf("%d\n", sizeof(array));
printf("%d\n", sizeof(array[0]));
}
Por alguna razón, el printf en el principal muestra resultados diferentes que el printf en f. Mi necesidad es saber cuántos elementos hay en la matriz.
Porque 'sizeof()' es un operador en tiempo de compilación y no una función miembro (como en C++). – ruslik