2011-06-04 14 views
6

Duplicar posible:
Where to find stdio.h functions implementations ?¿Dónde encontrar la implementación de stdio.h?

Hola, estoy tratando de encontrar las definiciones de las funciones de las funciones definidas en el archivo de cabecera stdio.h, quiero aprender funciones como printf () se logra, pero no puedo encontrar ningún directivo de preprocesador vinculado en stdio.h al archivo de implementación en otro lugar. ¿Cómo puede un C Compiler saber dónde encontrar las implementaciones cuando no hay referencias directas al archivo de definición de función? (Aprendí que el archivo .h puede acompañar con el mismo archivo de implementación .c de un libro de Object-c.) ¿Podrían ayudarme? ¡Gracias! Estoy usando GCC en Mac OS X.

+2

una "cabecera" No tiene que haber un archivo en absoluto. Un compilador puede tener todo integrado. – Wiz

+0

Como no ha especificado qué compilador está utilizando, puede ver la implementación de Microsoft si tiene una versión no expresa de Visual Studio AFAIK. Normalmente se encuentran en: '\ Archivos de programa \ Microsoft Visual Studio [ver no.] \ VC \ crt' –

Respuesta

2

Intente descargar el código fuente para el proyecto de biblioteca GLIBC. Ahí es donde las definiciones de las funciones estándar son cuando se utiliza el compilador GCC (y derivadas).

+1

' gcc' no tiene que usar 'glibc'. Pero si está ejecutando una distribución típica de Linux, lo más probable es que lo esté utilizando. – asveikau

5
+2

+1 para el árbol de fuentes refrescantemente sensato de FreeBSD – jwd

+1

Es posible que desee vincular a 'vfprintf()' también, ya que esa es la función que hace todo el trabajo pesado: analizar los argumentos reales. – Wiz

+0

Buena sugerencia. Hecho. – Sean

Cuestiones relacionadas