Many of us know the traditional uses of scanf. Bem, aqui estão alguns dos fatos menos conhecidos

Como ler apenas uma parte da entrada que precisamos? Por exemplo, considere algum fluxo de entrada que contenha apenas caracteres seguidos por um inteiro ou um flutuador. E só temos de analisar esse número inteiro ou flutuar.
That is,
Input: “this is the value 100”,
Output: value read is 100

Input: “this is the value 21.2”,
Output: value read is 21.,/div>, &a);

printf("Input value read : a = %d", a);
return 0;
}



Agora, presumivelmente, não sabemos o que o anterior personagens são, mas sabemos com certeza que o último valor é o número inteiro., Como podemos analisar o último valor como um inteiro?

abaixo da solução só funciona se a cadeia de entrada não tiver espaços.,

, &a);

printf("Input value read : a=%d",a);
return 0;
}



Explanation: The %*s in scanf is used to ignore some input as required., Neste caso, ignora a entrada até o próximo espaço ou nova linha. Da mesma forma, se escrever %*d, irá ignorar os inteiros até ao próximo espaço ou nova linha.

O fato acima pode não parecer um truque útil à primeira vista. Para entender seu uso, vamos primeiro ver o fscanf ().

fscanf() : cansado de toda a sintaxe do clumpsy para ler a partir de arquivos? bem, o fscanf vem em Socorro.

int fscanf(FILE *ptr, const char *format, ...) 

fscanf lê a partir de um ficheiro apontado pelo ponteiro do ficheiro (ptr), em vez de ler a partir do fluxo de entrada.

considere o seguinte ficheiro de texto abc.,txt

NAME AGE CITYabc 12 hyderbadbef 25 delhicce 65 bangalore 

agora, queremos ler apenas o campo da cidade do ficheiro de texto acima, ignorando todos os outros campos. Uma combinação de fscanf e o truque acima mencionados faz isso com facilidade.



Saída:

CITYhyderbaddelhibangalore 

Exercício: Contar o número de palavras, caracteres e linhas em um arquivo usando o fscanf!este artigo é contribuído por Nikhil Chakravartula., Se você gosta de GeeksforGeeks e gostaria de contribuir, Você também pode escrever um artigo e enviar seu artigo para [email protected]. veja o seu artigo que aparece na página principal dos GeeksforGeeks e ajuda outros Geeks.