파일저장이 매끄럽지가 않아서 질문드려요;;
다이
void CNodeInput(AC * Account[],int icCount,int i,char *cTelStore)
{
char temp[256];
char sex;
int k;
Account[icCount] = (AC *)malloc(sizeof(AC));
printf(I D : );
gets(temp);
Account[icCount]-pcID = (char *)malloc(strlen(temp)+1);
strcpy(Account[icCount]-pcID,temp);
printf(Password : );
gets(temp);
Account[icCount]-pcID = (char *)malloc(strlen(temp)+1);
strcpy(Account[icCount]-pcID,temp);
printf(이 름 : );
gets(temp);
Account[icCount]-pcName = (char *)malloc(strlen(temp)+1);
strcpy(Account[icCount]-pcName,temp);
..
중략
..
fflush(stdin);
}
위와 같은 방식으로 ID/Password/이름/주소/민번 등등을 받구요.
void CNodePrint(AC * pAccount)
{
printf(━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n);
printf( I D : %s\n Password : %s\n 이 름 : %s \n 주민등록번호 : %d \n ,pAccount-pcID, pAccount-pcPassword, pAccount-pcName, pAccount-IdNum);
printf( 성 별 : %c\n주 소 : %s \n 전화번호 : %s\n,pAccount-ccSex,pAccount-pcAddress,pAccount-pcTel);
printf(━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n\n);
}
이런식으로 받은 정보를 출력해주고..
void CFileSave(AC * Account[],int icCount)
{
FILE *fp;
int i;
fp=fopen(Account.txt,w);
for(i=0;iicCount;i++)
{
if(Account[i] != NULL)
{
fprintf(fp,%s\n,Account[i]-pcID);
fprintf(fp,%s\n,Account[i]-pcPassword);
fprintf(fp,%s\n,Account[i]-pcName);
fprintf(fp,%s\n,Account[i]-pcAddress);
fprintf(fp,%s\n,Account[i]-pcTel);
fprintf(fp,%c %d\n,Account[i]-ccSex,Account[i]-IdNum);
}
}
fclose(fp);
}
이렇게 파일 저장을 합니다...
에러나 워닝은 없어요..그냥 ID랑 패스워드가 파일에 저장이 안되구요..
주민등록번호 13자리를 입력하면 입력범위 초과인지 쓰레기값이...
알아보기 힘드시면 .c파일 통째로 올릴게요..
-
서향
파일 포인터 생성 할 때 fp의 값이 NULL인지 아닌지 먼저 체크를 한번 해보세용.
별문제는 없어보이지만.. -
떠나간그놈
전체 소스가 좀 필요할듯.ㅜ