5. ¿Cómo se pasa una estructura como argumento?
¿Y como se implementa cuando es devuelta por una función?
Cuando
las estructuras son pasadas como argumentos a funciones, la estructura
entera típicamente es metida en la pila, usando tanto palabras
como sean necesarias. Por este motivo, se suele pasar como argumento,
punteros a estructuras, en lugar de la propia estructura, para
evitar esta sobrecarga.
Algunos
compiladores simplemente pasan un puntero a la estructura, aunque
deban hacer una copia local para no modificar la estructura si
se esta pasando por valor.
Cuando tenemos funciones que devuelven estructuras, se ubica la
estructura en una posición de memoria. Esta posición
se indicada en un argumento adicional oculto que incluye en compilador
a la función.
Los
compiladores algo más antiguos utilizaban una posición
especial, estática para la estructura que se devolvía.
.
.