Exportar (0) Imprimir
Expandir todo
div
EOF
Expandir Minimizar
Este artículo proviene de un motor de traducción automática. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original
Este tema aún no ha recibido ninguna valoración - Valorar este tema

Campos de la especificación de formato: funciones scanf y de wscanf

Información aquí se aplica a la familia completa de scanf de funciones, incluidas las versiones seguras y describe los símbolos utilizados para indicar a las funciones de scanf cómo analizar el flujo de entrada, como el flujo de entrada stdin para scanf, en los valores que se insertan en variables de programa.

Una especificación de formato tiene el siguiente formato:

% [*] [ancho] [{h | l | ll | I64 | l}]tipo

El argumento de format especifica la interpretación de entrada y puede contener uno o más de los siguientes:

  • caracteres de espacio en blanco: espacio en blanco (“"); ficha (” \ t "); o línea nueva (“\ n "). Un carácter de espacio en blanco produce scanf para leer, pero no almacenado, todos los caracteres de espacio en blanco consecutivos en la entrada hasta el siguiente carácter que no sea un espacio en blanco. Un carácter de espacio en blanco en el formato coincide con cualquier número (0 incluida y combinación de caracteres de espacio en blanco en la entrada.

  • caracteres que no sean un espacio en blanco, salvo el signo de porcentaje (%). Un carácter que no sea un espacio en blanco produce scanf para leer, pero no lo almacena, un carácter coincidente que no sea un espacio en blanco. Si no coincide con el carácter siguiente del flujo de entrada, scanf finaliza.

  • Dar formato a las especificaciones, presentadas por el signo de porcentaje (%). Una especificación de formato hace scanf para leer y convertir los caracteres de la entrada en valores de un tipo especificado. El valor asignado a un argumento en la lista de argumentos.

el formato se lee de izquierda a derecha. Las especificaciones de formato del extremo de los caracteres son esperadas coincidir con la secuencia de caracteres del flujo de entrada; los caracteres coincidentes en el flujo de entrada se examinan pero no almacenados. Si un carácter en el flujo de entrada está en conflicto con la especificación de formato, scanf termina, y el carácter se deja en el flujo de entrada como si no se hubiera leído.

Cuando se encuentra la primera especificación de formato, el valor del primer campo de entrada se convierte como esta especificación y almacenado en la ubicación especificada en primer argument. La segunda especificación de formato genera el segundo campo de entrada que se va a convertir y almacenado en segundo argument, etc. a través del final de la cadena de formato.

Un campo de entrada se define como todos los caracteres hasta el primer carácter de espacio en blanco (espacio, pestaña, o nueva línea), o hasta el primer carácter que no se puede convertir según la especificación de formato, o hasta el ancho de campo (si se especifica) se alcance. Si hay demasiados argumentos para las especificaciones especificadas, se evalúan pero se omiten los argumentos adicionales. Los resultados son imprevisibles si no hay suficientes argumentos para la especificación de formato.

Cada campo de la especificación de formato es un carácter o un número que una opción de formato determinada. El carácter de type , que se produce después de que el campo opcional último de formato, determina si el campo de entrada se interpreta como un carácter, una cadena, o número.

La especificación más simple de formato contiene únicamente el signo de porcentaje y un carácter de type (por ejemplo, %s). Si un signo de porcentaje (%) va seguido de un carácter que no tiene ningún significado como carácter de la formato-CONTROL, tratan a ese carácter y los caracteres siguientes (hasta el signo de porcentaje siguiente) como secuencia normal de caracteres, es decir, una secuencia de caracteres que se deben comparar la entrada. Por ejemplo, especificar que un carácter de signo es usar como entrada, utilice %%.

Un asterisco (*) después del signo de porcentaje suprime la asignación de campos de entrada siguiente, se interpreta que aunque un campo del tipo especificado. El campo se digitaliza pero no almacenado.

Las versiones seguras (las con el sufijo de _s ) de la familia de scanf de funciones requieren que un parámetro del tamaño del búfer se dedica inmediatamente después de cada parámetro de ccon tipo, de C, de s, de S o de [. Para obtener más información sobre versiones seguras de la familia de scanf de funciones, vea scanf_s, _scanf_s_l, wscanf_s, _wscanf_s_l.

¿Te ha resultado útil?
(Caracteres restantes: 1500)
Gracias por sus comentarios

Adiciones de comunidad

AGREGAR
Mostrar:
© 2014 Microsoft. Reservados todos los derechos.