Considere un programa P que consta de dos módulos fuente M1 y M2 contenidos en dos archivos diferentes. Si M1 contiene una referencia a una función definida en M2, la referencia se resolverá en
(A) Tiempo de edición
(B) Tiempo de compilación
(C) Tiempo de enlace
(D) Tiempo de carga
Respuesta: (C)
Explicación:
Nota:
los enlaces estáticos se realizan en el momento del enlace, los enlaces dinámicos o las bibliotecas compartidas se incorporan solo en el tiempo de ejecución.
(A) Tiempo de edición: las referencias de funciones nunca se pueden proporcionar/determinar en el momento de la edición o en el momento de la escritura del código. Las referencias a funciones son diferentes de los nombres de funciones. Los nombres de funciones se usan en tiempo de edición y las referencias de funciones se determinan en tiempo de vinculación para bibliotecas estáticas o en tiempo de ejecución para bibliotecas dinámicas.
(B) Tiempo de compilación: el enlace de tiempo de compilación se realiza para funciones presentes en el mismo archivo o módulo.
(C) Tiempo de enlace: el enlace de tiempo de enlace se realiza en la etapa del enlazador, donde las funciones presentes en archivos o módulos separados se referencian en el ejecutable.
(D) Tiempo de carga: la función de referencia no se realiza en el momento de la carga.
Por lo tanto, la respuesta correcta sería (C).
Esta solución es aportada por .
Cuestionario de esta pregunta
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA