Ir ao conteúdo
  • Cadastre-se

Passar dados de um arquivo para vetor de strings


Raphael Franco

Posts recomendados

Olá, estou com o seguinte problema. Tenho um arquivo txt no seguinte formato:

"

Fulano

Ciclano

Beltrano

"

E eu gostaria de extrair cada um desses nomes e colocar em uma posição diferente em um vetor de strings, porém eu não consigo fazer isso. O máximo que consigo é extrair todo o texto e por em um vetor de caracteres, o código ficou assim:

FILE *file = fopen("string.txt","r");
char frase [100];
  while(fgets(frase, 100, file) != NULL){
  printf("%s", frase);
}

Ou seja eu queria ter um "char frase[10][50]" e então colocar o nome fulano em frase[0], depois o ciclano em frase[1] e assim por diante. Alguém poderia ajudar ?

Obs: Eu nem preciso imprimir os textos no programa, só alocar eles de maneira correta mesmo.

Link para o comentário
Compartilhar em outros sites

@isrnick Muito obrigado, seu código fez exatamente o que eu queria. Porém, eu não consegui entender como kkk

Como o programa identifica que a string vai do primeiro carácter até a quebra de linha sendo que o parâmetro é != NULL ? Eu pensei que deveria ter algum parâmetro que envolvesse '\n'.

Isso tem a ver com o modo que o fgets trabalha ?

Link para o comentário
Compartilhar em outros sites

fgets lê 100-1 caracteres máximo(99), ou até encontrar \n, ele repete isso até o chegar no fim do arquivo(EOF), nesse caso ele retorna null ao atingir o fim do arquivo. então fgets resumidamente lê linha por linha até chegar ao fim do arquivo desde que essa seja menor que o numero indicado que nesse caso é 100. Busque documentar-se sobre as funções utilizadas, funções recebem valores, retornam valores e realizam ações, procure saber sobre esses 3 pontos que todas as funções que possuem, e claro está que algumas não retornam nada, em C++ esse tipo de "função" é catalogado como ações e não como funções, porém isso é tema de conversa para outro dia. >_<

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...