===== Função sscanf =====
Arquivo header:
#include
----
Sintaxe:
''[[tipos_dados|int]] sscanf( [[const]] [[tipos_dados| char *]] EndereçoSring, [[tipos_dados#formatadores_de_tipos|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 [[tipos_dados#formatadores_de_tipos|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
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.eti.br|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
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''
--- //[[tarcnux@tarcnux.com.br|Tarcisio Nunes]] 2011/09/6 12:20//