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 não funciona... :(
Pergunta
McBlade
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
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 não funciona... :(
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.