sscanf ()- Leer datos
Formato
#include <stdio.h>
int sscanf(const char *buffer, const char *format, argument-list);Nivel de idioma
ANSI
De hebra segura
Sí
Sensible al entorno local
El comportamiento de esta función puede verse afectado por las categorías LC_CTYPE y LC_NUMERIC del entorno local actual. El comportamiento también puede verse afectado por la categoría LC_UNI_CTYPE del entorno local actual si se especifica LOCALETYPE (*LOCALEUCS2) o LOCALETYPE (*LOCALEUTF) en el mandato de compilación. Para obtener más información, consulte Descripción de CCSID y entornos locales.
Descripción
La función sscanf() lee datos del almacenamiento intermedio en las ubicaciones que proporciona la lista-argumentos. Cada argumento debe ser un puntero a una variable con un tipo que corresponda a un especificador de tipo en la serie-formato.
Valor de retorno
La función sscanf() devuelve el número de campos que se han convertido y asignado correctamente. El valor de retorno no incluye los campos que se han leído pero no se han asignado.
El valor de retorno es EOF cuando se encuentra el final de la serie antes de convertir nada.
Ejemplo
Este ejemplo utiliza sscanf() para leer diversos datos de la serie tokenstringy, a continuación, muestra dichos datos.
#include <stdio.h>
#include <stddef.h>
int main(void)
{
char *tokenstring = "15 12 14";
char *string = "ABC Z";
wchar_t ws[81];
wchar_t wc;
int i;
float fp;
char s[81];
char c;
/* Input various data */
/* In the first invocation of sscanf, the format string is */
/* "%s %c%d%f". If there were no space between %s and %c, */
/* sscanf would read the first character following the */
/* string, which is a blank space. */
sscanf(tokenstring, "%s %c%d%f", s, &c, &i, &fp);
sscanf(string, "%ls %lc", ws,&wc);
/* Display the data */
printf("\nstring = %s\n",s);
printf("character = %c\n",c);
printf("integer = %d\n",i);
printf("floating-point number = %f\n",fp);
printf("wide-character string = %S\n",ws);
printf("wide-character = %C\n",wc);
}
/***************** Output should be similar to: *****************
string = 15
character = 1
integer = 2
floating-point number = 14.000000
wide-character string = ABC
wide-character = Z
*******************************************************************/
Información relacionada
- fscanf ()-Leer datos formateados
- scanf ()-Leer datos
- swscanf ()-Leer datos de caracteres de ancho
- fwscanf ()-Leer datos de la secuencia utilizando el carácter ancho
- wscanf ()-Leer datos utilizando serie de formato de caracteres ancho
- sprintf ()-Imprimir datos formateados en almacenamiento intermedio
- <stdio.h>