Ir ao conteúdo
  • Cadastre-se

pauluvitor

Membro Júnior
  • Posts

    4
  • Cadastrado em

  • Última visita

Reputação

0
  1. Boa tarde pessoal, estou fazendo uma tarefa de computação e gostaria muito de utilizar uma variavél flag dentro de uma struct. Minha ideia era fazer todas structs receberem essa variavel com o valor 0, porém quando declaro minha struct com algo no formato abaixo, aparece esse erro |error: expected ‘:’, ‘,’, ‘;’, ‘}’ or ‘__attribute__’ before ‘=’ token| typedef struct{ char titulo[100]; int linha; char letra[5][200]; int flag=0; }musica; Se alguém puder me ajudar eu fico agradecido.
  2. Valeu cara, está me ajudando muito. Essa coisa no \n após o fscanf eu consegui resolver de outra maneira um pouco mais complicada. Percebi que todos os fgets que vinham depois de um fscanf vinham vazios, o que eu fiz foi sempre depois um fscanf eu dou um jeito de realizar 2 fgets, assim armazena-se corretamente. Vou tentar utilizar as novas dicas. Obrigado
  3. Obrigado pela ajuda, tentei aprimorar o programa com suas dicas porém ele ainda não está armazenando de forma correta. Como você sugeriu, fiz um vetor de strings dentro da struct para poder armazenar mais de uma linha. #include<stdio.h> #include<stdlib.h> typedef struct{ char titulo[100]; int linha; char letra[3][200]; }musica; int main(){ int j=0; int i; int k; musica panca[10]; FILE *file; file=fopen("rock.txt", "r"); while(j<10){ fgets(&panca[j].titulo,100,file); fscanf(file, "%d", &panca[j].linha); k=panca[j].linha; i=0; while (i<k){ fgets(&panca[j].letra,200,file); i++; } j++; } fclose(file); printf("%s", panca[0].titulo); printf("%s", panca[0].letra[1]); return(0); }
  4. Bom dia galera, estou com um problema para passar as informações presentes em um arquivo para um vetor de variáveis struct. O que quero fazer é o seguinte, como os dados presentes no arquivo txt estão salvos de forma ordenada gostaria de conseguir armazenar essas informações em grupos(uma struct contendo duas strings e um inteiro). O arquivo txt está escrito de maneira que sua primeira linha é um titulo de uma musica, sua segunda linha é o número de linhas da letra da música que vai ser apresentada e por final são escritas mais algumas linhas com a letra da música. Segue um exemplo: rock.txt Estou tentando armazenar isso em uma struct to tipo typedef struct{ char titulo[100]; /*Essa armazena o titulo da música*/ int tamanho; /*Essa coleta a informação para a próxima leitura*/ char letra[100]; /*Essa armazena um certo numero de linhas determinado pela variável tamanho.*/ }rock; Até o momento estou sem sucesso, tentei fazer dessa forma: #include<stdio.h> #include<stdlib.h> typedef struct{ char titulo[100]; int linha; char letra[200]; }musica; int main(){ int j=0; int i; musica panca[10]; FILE *file; file=fopen("rock.txt", "r"); while(j<10){ fgets(panca[j].titulo,100,file); fscanf(file, "%d", &panca[j].linha); for(i=0;i<=panca[j].linha;i++){ fgets(panca[j].letra,200,file); } j++; } fclose(file); printf("%s", panca[5].titulo); return(0); }

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...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!