C언어/문제풀다 하나씩

phrasing 문자열 안에 특정 문자 찾기

mcdn 2020. 6. 26. 15:08
반응형
#include <iostream>
#include <string>
using namespace std;

int main() {
	string t[5];
	for (int i = 0; i < 5;i++) {
		cin >> t[i];
	}
	int cnt = 0;
	for (int i = 0; i < 5;i++) {
		int index = 0;
		int index2 = 0;
		
		while (index2 != -1) {
			int index2 = t[i].find("MCD", index);
			if (index2 == -1) break;
			cnt += 1;
			index = index2 + 1;
		}
		
	}
	cout << cnt;

}

 

find 함수

 

arr string이 있으면

arr.find(찾고자하는 문자, 시작인덱스)로 index를 찾는다

따라서 index2 = t[i].find("MCD", index);가 성립

 

find를 하지 못하면 -1을 반환한다. 

따라서 index2 == -1 -> break 가 성립

 

 

그외 substr함수가 있다

string c = arr.substr(시작인덱스, 사이즈)면 arr중  시작인덱스에서 사이즈 만큼 substring을 만들어준다. 

반응형