in

¿Cuál es la diferencia entre stdio.cy stdio.h?

apple touch icon@2

stdio.h es un encabezado estándar, que debe ser proporcionado por cada implementación de C alojada conforme. Eso declara, pero no definir, una serie de entidades, en su mayoría funciones de biblioteca como putchar y scanf.

stdio.c, si existe, es probable que sea un archivo fuente C que define las funciones declaradas en stdio.h. No hay ningún requisito de que una implementación deba ponerlo a disposición. Puede que ni siquiera exista; por ejemplo las implementaciones de las funciones declaradas en stdio.h podría aparecer en múltiples *.c archivos.

La declaracion de putchar es:

int putchar(int c);

y eso es todo lo que el compilador necesita saber cuando ve una llamada a putchar en su programa. El código que implementa putchar se proporciona normalmente como código de máquina, y el trabajo del vinculador es resolver su putchar() llamar para que termine invocando ese código. putchar() puede que ni siquiera esté escrito en C (aunque probablemente lo esté).

Un programa ejecutable se puede construir a partir de múltiples *.c archivos fuente. Una y solo una copia del código que implementa putchar es necesario para un programa completo. Si la implementación de putchar estaban en el archivo de encabezado, entonces se incluiría en cada archivo fuente compilado por separado, creando conflictos y, en el mejor de los casos, desperdiciando espacio. El código que implementa putchar() (y todas las demás funciones de la biblioteca) solo necesita compilarse una vez.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

ericsson

5G: ventajas y desventajas

BpYxh4BL4QzyZosjKyNs3 1200 80

Las mejores historias de Joker de todos los tiempos