Ir ao conteúdo
  • Cadastre-se

sidyo

Membro Júnior
  • Posts

    11
  • Cadastrado em

  • Última visita

Reputação

0
  1. Pensei em utilizar calloc no lugar de malloc e, sempre q eu realocar, manualmente colocar 0's. Seria uma solução válida?
  2. Existe alguma outra maneira que não seja guardar o tamanho utilizado para alocação?
  3. Olá, tenho um problema utilizando a função malloc para guardar strings. Desejo guardar strings em uma memória alocada e caso não tenha espaço realocar. Por exemplo, uso malloc para 20 caracteres, salvo uma string com 10 caracteres mais o null e após isso desejo salvar outra string com 10 caracteres, como faria a verificação para saber se tem espaço na memória ou seria necessário realocar?
  4. Entendi, então faria dessa maneira para modificar: void Faculdade::set_DisciplinaNome(int pos, string n){ baseDis[pos].set_nome(n) } Ou outra maneira mais simples?
  5. A leitura do arquivo funcionou perfeitamente! Só que estou com outro problema, não estou conseguindo mudar valores com set's. Por exemplo: a Classe Faculdade tem um vetor de Disciplinas, que é composta de um código e um nome. Utilizo estes métodos para troca: Disciplina Faculdade::get_disciplina(int pos){ return baseDis[pos]; } void Disciplina::set_nome(string n){ nome = n; } Não apresenta erro de compilação, mas não há troca. Porém isso é apenas na classe faculdade, caso eu declare uma disciplina no main isso funciona: Faculdade facul; Disciplina di; di = facul.get_disciplina(0); cout <<"DI: "<< di.get_nome() << endl; di.set_nome("Troca"); cout << "DI: "<< di.get_nome()<< endl; cout << "facul: " << facul.get_disciplina(0).get_nome() << endl; facul.get_disciplina(0).set_nome("Troca"); cout << "facul: "<< facul.get_disciplina(0).get_nome(); A saída na tela fica assim: DI: Teste DI: Troca facul: Teste facul: Teste Alguma ideia do motivo?
  6. @V!OLADOR O vetor de alunos é declarado com tamanho 10, só preciso separar as matrículas e coloca-las de uma em uma em cada posição do vetor. Mas não sei como fazer para tratar o resto da linha com as matrículas
  7. Oi, estou tendo problemas com um sistema de matrículas. Preciso cadastrar turmas declaradas com um número da turma, uma string com o código da disciplina e um vetor com o numero da matrícula de alunos: nº da turma cod. da disciplina numero de matrículas 490 4612A 1, 3, 6 590 4612A 2, 4, 5 128 4613A 4, 5, 6 168 4610R 1, 4 Pensei em algo deste gênero, mas n sei como colocar os alunos no vetor já q ele é varíavel(mas nunca será mais que 10): while(!disciplinas.eof()){ int n, m; string c; alunos >> n; alunos >> c; if(!disciplinas.eof()){ Turma tur(n, c); int j=0; while() // onde adicionaria os alunos } }
  8. Estou recebendo a seguinte mensagem na linha 27: warning: passing argument 1 of 'invertevet' from incompatible pointer type [enabled by default]. E na 3: note: expected 'int **' but argument is of type 'int (*)[(sizetype)(max)]'. #include <stdio.h>void invertevet(int *vet[], int tam){ int i, aux; for(i = 0 ; i <= tam - 1 ; i++){ aux = *vet[i]; *vet[i] = *vet[tam / 2]; *vet[tam -(i + 1)] = aux; } for(i = 0 ; i < tam - 1 ; i++){ printf("%i", *vet[i]); }}int main(void) { int max = 6, vet[max], i; printf("Digite 6 numeros inteiros: "); for(i = 0 ; i <= max - 1 ; i++){ scanf("%d", &vet[i]); } for(i = 0 ; i <= max - 1 ; i++){ printf("%d", vet[i]); } invertevet(&vet, max); for(i = 0 ; i <= max - 1 ; i++){ printf("%d", vet[i]); } 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...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!