제 카운트가 4가 될 때마다 새 라인을 입력하려고합니다.문자열 파싱 문제가 발생했습니다.
지금 당장은 카운트가 4가 될 때마다 새 코드를 만들 수 있지만 '반복 횟수'에 조건을 추가하면 모든 반복마다 새 줄이 생깁니다. 이 내 chartDataString.find (']')에 의해 발생할 수 있다고 생각하지만 그것을 수정하는 방법을 잘 모르겠습니다. 당신은 chartDataString
전혀 chartDataString.find("]")
와 ]
가 포함되어 있는지 여부를 확인하는
int barCount = 0;
size_t start = 0;
size_t n = 0;
int charCount = 0;
while ((start = chartDataString.find(" |", start)) != string::npos) {
++barCount;
start+=2;
charCount++;
if (barCount == 4 || chartDataString.find("]")) {
//cout<<"Number of bars: "<<barCount<<endl;
chartDataString.insert(start, "\n");
barCount = 0;
charCount= 0;
}
}
검색 할 실제 위치는 다른 로직에 의해 판단되는'charCount'가 아니라'start' 일 수도 있다고 생각합니다. 그것 이외에, 나는 당신이 여기에 맞는 생각을 가지고 있다고 믿는다. –