Tengo un problema con mi código. Tengo 4 datos que ingreso con la función fgets, que son el nombre y apellido, dirección. teléfono y email. El problema es que no aparece o no se visuliza en la pantalla para ingresar estos datos.
Uso el sistema operativo ubuntu.
Este es mi código:
Cita:
include <stdio.h>
#include <ncurses.h>
#include <stdlib.h>
struct contacto{
int con_cod;
char con_nya[30];
char con_dir[30];
char con_tel[20];
char con_ema[30];
}con;
FILE *arch;
void altas(void);
int main(void){
initscr();
move(1,40);
start_color();
init_pair(1,COLOR_BLUE,COLOR_RED);
attron(COLOR_PAIR(1));
printw("Programa de contacto");
arch=fopen("contactos.dat", "a+b");
if(arch==NULL){
move(10,20);
printf("Error al crear el archivo");
exit(0);}
altas();
fclose(arch);
endwin();
}
void altas(void){
erase();
start_color();
init_pair(1,COLOR_BLUE,COLOR_RED);
attron(COLOR_PAIR(1));
move(12,30);
printw("Codigo:");
move(12,38);
scanw("%d",&con.con_cod);
move(13,30);
printw("Nombre:");
move(13,38);
fgets(con.con_nya,30,stdin);
move(14,30);
printw("Dirección:");
move(14,43);
fgets(con.con_dir,30,stdin);
fflush(stdin);
move(15,30);
printw("Teléfono:");
move(15,43);
fgets(con.con_tel,20,stdin);
move(16,30);
printw("Email:");
move(16,38);
fgets(con.con_ema,30,stdin);
getch();
fwrite(&con,sizeof(con),1,arch);
}
#include <ncurses.h>
#include <stdlib.h>
struct contacto{
int con_cod;
char con_nya[30];
char con_dir[30];
char con_tel[20];
char con_ema[30];
}con;
FILE *arch;
void altas(void);
int main(void){
initscr();
move(1,40);
start_color();
init_pair(1,COLOR_BLUE,COLOR_RED);
attron(COLOR_PAIR(1));
printw("Programa de contacto");
arch=fopen("contactos.dat", "a+b");
if(arch==NULL){
move(10,20);
printf("Error al crear el archivo");
exit(0);}
altas();
fclose(arch);
endwin();
}
void altas(void){
erase();
start_color();
init_pair(1,COLOR_BLUE,COLOR_RED);
attron(COLOR_PAIR(1));
move(12,30);
printw("Codigo:");
move(12,38);
scanw("%d",&con.con_cod);
move(13,30);
printw("Nombre:");
move(13,38);
fgets(con.con_nya,30,stdin);
move(14,30);
printw("Dirección:");
move(14,43);
fgets(con.con_dir,30,stdin);
fflush(stdin);
move(15,30);
printw("Teléfono:");
move(15,43);
fgets(con.con_tel,20,stdin);
move(16,30);
printw("Email:");
move(16,38);
fgets(con.con_ema,30,stdin);
getch();
fwrite(&con,sizeof(con),1,arch);
}