Ajuda com Ponteiro no Turbo C 1.0

05/05/2007

1

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


Responder
×
+1 DevUP
Acesso diário, +1 DevUP
Parabéns, você está investindo na sua carreira