Ferramentas do usuário

Ferramentas do site


sscanf

Função sscanf

Arquivo header:

#include <stdio.h>

Sintaxe: int sscanf( const char * EndereçoSring, formato, endereços_variáveis_argumentos);


A função sscanf é idêntica à função scanf, mas os dados são lidos da string. O valor devolvido é igual ao número de variáveis, às quais foram realmente atribuídos valores. Esse número não inclui variáveis que foram saltadas devido ao uso do especificador de formato *. Um valor zero significa que nenhum campo foi atribuído; EOF indica que ocorreu um erro antes da primeira atribuição.

/* sscanf.c */
 
#include <stdio.h>
int main(void)
{
   char sTexto[80];
   int iValor_a, iValor_b;
   /* Lera uma string (formato %s) e depois 2 valores inteiros (formato %d). 
      As variáveis devem ser informadas na mesma seqüência. */
   sscanf("Alo 1 2 3 4 5", "%s%d%d", sTexto, &iValor_a, &iValor_b);
   printf("\nTexto = [%s]\t Valor_a = [%d] \t Valor_b = [%d]\n", sTexto, iValor_a, iValor_b);
   return 0;
}

Marcos Laureano 2009/05/10 18:37

Outro exemplo para ilustrar o valor que a função sscanf retorna em caso de sucesso na leitura da string.

#include <stdio.h>
 
int main()
{
    char *s = "Hello World";
    char s1[20],s2[20];
    int len =  sscanf(s,"%s",s1);
    printf("%s : %d \n",s1,len);
 
    len =  sscanf(s,"%s %s",s1,s2);
    printf("%s %s: %d \n",s1,s2,len);
 
    return 0;
}

Saída

Hello : 1

Hello World: 2

Tarcisio Nunes 2011/09/6 12:20

sscanf.txt · Última modificação: 2023/09/12 16:14 por 127.0.0.1