Hogar Desarrollo ¿Qué es scanf? - definición de techopedia

¿Qué es scanf? - definición de techopedia

Tabla de contenido:

Anonim

Definición - ¿Qué significa Scanf?

En el lenguaje de programación C, scanf es una función que lee datos formateados de stdin (es decir, la secuencia de entrada estándar, que generalmente es el teclado, a menos que se redirija) y luego escribe los resultados en los argumentos dados.

Esta función pertenece a una familia de funciones que tienen la misma funcionalidad pero difieren solo en su fuente de datos. Por ejemplo, fscanf obtiene su entrada de una secuencia de archivos, mientras que sscanf obtiene su entrada de una cadena.

Techopedia explica Scanf

La función scanf tiene el siguiente prototipo / firma:

int scanf (formato const char *, …);

dónde

  • int (entero) es el tipo de retorno
  • formato es una cadena que contiene el (los) especificador (es) de tipo (ver más abajo)
  • "…" (puntos suspensivos) indica que la función acepta un número variable de argumentos; cada argumento debe ser una dirección de memoria donde se escribe el resultado convertido

Un especificador de tipo simple consta de un símbolo de porcentaje (%) y un carácter alfa que indica el tipo. A continuación se presentan algunos ejemplos de los especificadores de tipo reconocidos por scanf:

  • % c - Carácter
  • % d: entero firmado
  • % x: entero sin signo en formato hexadecimal
  • % f - Punto flotante
  • % s - Cadena

La función funciona leyendo la entrada de la secuencia de entrada estándar y luego escanea el contenido del "formato" para cualquier especificador de formato, tratando de hacer coincidir los dos. En caso de éxito, la función escribe el resultado en los argumentos pasados.

Por ejemplo, si la llamada a la función es

scanf ("% c% d", & var1, & var2);

y el usuario escribe "a1", la función escribirá "a" en "var1" y "1" en "var2". Si la llamada a la función, sin embargo, es

scanf ("% x", & var);

la misma entrada se leerá como el número hexadecimal "a1", que es 161 en decimal.

La función devuelve el siguiente valor:

  • > 0: el número de elementos convertidos y asignados con éxito.
  • 0: no se asignó ningún elemento.
  • <0 - Error de lectura encontrado o fin de archivo (EOF) alcanzado antes de realizar cualquier asignación.
¿Qué es scanf? - definición de techopedia