Ajuda com Ponteiro no Turbo C 1.0

05/05/2007

0

Gente eu to aprendendo ponteiros ainda... meu professor sacaneou pedindo pra fazer um sisteminha básico usando somente ponteiros...
mas eu to precisando de ajuda por que não consigo ler uma string
struct tp_pessoa {
  int  *codigo;
  char *nome;
};

void grava(struct tp_pessoa *aux) {
  if ((arquivo = fopen("PROGRAMA.TXT","a+"))) // se conseguiu abrir o arquivo
    fprintf(arquivo, "¬d ¬s\n", *aux[0].codigo, strupr(aux[0].nome));
  else
  {
    printf("Erro ao tentar gravar no arquivo PROGRAMA.BIN: ERRO 002");
    getch();
  }
  fclose(arquivo);
}

main () {
  char *opcao, *nome;
  int codigo;
  struct tp_pessoa *aux = (struct tp_pessoa *)malloc(1 * sizeof(struct tp_pessoa));
  aux[0].codigo = &codigo;
  aux[0].codigo = nome;
  scanf("¬d", codigo);
  gets(nome);
  gravaarquivo(aux);
}

O problema é que ao ler a variável código, o programa pula direto para a funcao ´gravaarquivo´ gravando assim, no arquivo apenas o código... Onde eu estou errando? Tentei até o fgets e nao funciona... :(


Marcosrocha

Marcosrocha

Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar