Printf no fue declarado en este ámbito.

Acabo de comenzar a aprender C. Pero el primer progtwig del libro al que me refiero genera un error que dice que “printf no se declaró en este ámbito”

Estoy escribiendo el código exactamente como aparece en el libro. Aún se está dando el error. libro

código

El comstackdor no encontró statement para la función printf . Es por eso que muestra error de comstackción.

La statement correcta (ISO / IEC 9899: 1999) de la función printf es:

 int printf(const char * restrictformat, ... ); 

Puede declarar la función como la anterior antes de llamarla o puede incluir un header file que contenga la statement de esa función. Pero sería más fácil y seguro incluir el archivo de encabezado que contiene la statement de su función ( #include para printf ).

Si desea saber por qué necesita proporcionar una statement de la función antes de llamarla, puede consultar esta pregunta . La explicación se da a continuación:

El lenguaje de progtwigción C se diseñó para que el comstackdor pudiera implementarse como un comstackdor de una pasada. En tal comstackdor, cada fase de comstackción solo se ejecuta una vez. En un comstackdor de este tipo, no puede hacer referencia a una entidad que se define más adelante en el archivo fuente.

Además, en C, el comstackdor solo interpreta una sola unidad de comstackción (generalmente un archivo .c y todos los archivos .h incluidos) a la vez. Así que necesitabas un mecanismo para referirte a una función definida en otra unidad de comstackción. Todos los identificadores en C deben ser declarados antes de ser utilizados. Esto es cierto tanto para las funciones como para las variables. Para las funciones, la statement debe estar antes de la primera llamada de la función. Una statement completa incluye el tipo de devolución y el número y tipo de los argumentos. Esto también se llama la función prototipo.

También puede definir una función antes de llamarla en la misma unidad de comstackción. O simplemente puede declararlo antes de llamarlo. Es una mejor idea (no siempre) incluir el archivo de encabezado que contiene la statement de la función.

y considera comprar un libro nuevo. El autor debería haber mencionado la inclusión del archivo de cabecera.

El libro está desactualizado.

Añadir

 #include  

a su progtwig. Proporciona la statement de printf y muchas otras funciones. Para obtener una lista completa de las funciones definidas en el archivo, busque su documentación .

printf() se declara en el stdio.h cabecera stdio.h .

Agregue esto como la primera línea de su progtwig:

 #include  

Agrega un

  #include 

al principio del archivo .c Es un archivo de encabezado que se incluirá para cada progtwig c que escriba. El archivo de encabezado stdio.h contiene una statement de función de entrada / salida estándar (por ejemplo, printf y scanf)

Tienes que incluir el archivo de cabecera: “stdio.h”