Fscanf (Linguagem C)

2 respostas
C

Estou percorrendo um .txt e insirindo todas suas palavras em uma lista.
Para isto, usei um fscanf dentro de um while.

Deu certo, mas a pergunta é: Como o fscanf pega somente a palavra?
Digamos, no seguinte arquivo exemplo.txt:

“Este é um exemplo para meu novo tópico.”

Se o fscanf age uma vez, por exemplo:

char *str; fscanf(myFile, "%s", str); printf("%s", str);

Imprimirá a palavra Este na tela.
Como o fscanf soube delimitar exatamente onde terminava a palavra?
Não há caracter neutro nesse caso, há?
O que faz com que ele não atribua Este é um a str, por exemplo?

2 Respostas

getAdicted

Olá amigo,

Veja se ajuda: http://www.cplusplus.com/reference/clibrary/cstdio/fscanf/

[]'s

E

%s , para os métodos da família scanf, serve para pegar um conjunto de caracteres delimitados por espaços ou quebras de linha. Para ler uma linha completa, use fgets.

Criado 16 de novembro de 2010
Ultima resposta 16 de nov. de 2010
Respostas 2
Participantes 3