-1
파일의 데이터 입력과 관련된 문제가 있습니다. 나는 키를 누를 때 끝나는 배열을 만들지 만 문제는 0 인덱스의 문자가 파일에없는 반면 나머지 인덱스는 거기에 있다는 것입니다. 즉, 파일에 쓰는 동안 배열의 첫 번째 문자가 누락되어 파일에 없습니다.파일에 데이터를 쓸 때 첫 번째 문자가 손실
char CNIC[10000];
std::fstream file1;
cout<<"Enter CNIC's >>>>>>>>>>> "<<endl;
file1.open("Nadra database.txt",std::fstream::in | std::fstream::out | std::fstream::app);
if(!file1)
{
cout<<"File was not open";
}
else
{
for(int i=0;i<11;i++)
{
char ch = getche();
if((int)ch==13)
{
cout<<"Press Enter key to close data entry "<<endl;
break;
}
else
{
for(int i=0;i<11;i++)
{
char character = getche();
if((int)character==13)
{
break;
}
else
{
CNIC[i]=character;
file1<<CNIC[i];
}
}
file1<<endl;
}
}
}
system("pause");
문자를 숫자와 비교하는 대신 문자 리터럴과 비교하십시오. 예를 들어,'if (character == '\ r')'. –
바깥 고리가 왜 존재하는지 잘 모르겠습니다. 이 코드가 무엇을하기로되어 있는지 조금 더 명확하게 설명 할 수 있습니까? – mbgda
왜'cin' 대신'getche'을 사용하고 있습니까? –