Ajuda com Ponteiro no Turbo C 1.0

05/05/2007

2

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

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários. Para saber mais sobre o uso de cookies,
consulte nossa política de privacidade. Ao continuar navegando em nosso site, você concorda com a nossa política.

Aceitar