파일의 문자 인 문자를 2 차원 배열로 저장하려고합니다. 첫 번째 줄의 마지막 단어로 끝나면 다음 줄로 가서 같은 것을하고 싶다. (필자는 필자가 본문에 4 줄을 가지고 있다고 가정). 내가 그것을 영원히가는 내 프로그램이 경고음을 인쇄 할 때C/C++ - 파일에서 2 차원 문자 배열로 문자 저장
void getPoem(char *filePath){
ifstream f(filePath);
int NumberOfRows=0;
int NumberOfColumns=-1;
int NumberOfColumns_Clone=-1;
char matrix[100][100]={0};
char s[100];
do{
f.getline(s, 100, '\n');
for(int i=strlen(s)-1;i>=0;i--)
if(isalpha(s[i]))
matrix[NumberOfRows][++NumberOfColumns]=s[i];
matrix[NumberOfRows][++NumberOfColumns]=NULL;
NumberOfColumns--;
NumberOfColumns_Clone=NumberOfColumns; // I used this so i don't lose the nr_of_columns
NumberOfColumns=0;
NumberOfRows++;
matrix[NumberOfRows][NumberOfColumns]='\0';
}
while(NumberOfRows<4);
for (int i = 0; i<=NumberOfRows; i++){
for (int j = 0; j<=NumberOfColumns_Clone; j++)
cout << matrix[i][j] << " ";
cout << endl;
}
cout << endl;
}
내 출력 끔찍한 :
여기 내 코드입니다. 나는 그것이 나쁘다는 것을 알고있다. 나는 단지 내가 잘못했는지 알고 싶다.
"string"을 사용하고 싶지 않으므로 "char"와 어려움을 겪고 있습니다.
도움을 주시면 감사하겠습니다. 정말 고마워요!
왜 디버거를 사용하지 않습니까? 당신은 버그를 발견하고 당신은 또한 뭔가를 배울 것입니다 ... – 23ars
나는 그것을 사용했고, 그 매트릭스는 내가 필요로하는 단어를 가지고 또한 그 뒤에 공백 문자를 가지고 있으며, 그것을 해결하는 방법을 모르겠다는 것을 보여줍니다 . – Lazai