Notice
Recent Posts
Recent Comments
Link
반응형
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
Tags
- VUE
- 동적계획법
- sql
- Medium
- CS
- 고득점Kit
- javascript
- 파이썬
- 배열
- web
- Doitvue.js입문
- 리트코드
- 코테연습
- OS
- 프로그래밍
- 카카오
- 프로그래머스
- Level2
- 자바스크립트
- python
- 리액트
- LeetCode
- 백준
- typescript
- react
- dp
- 웹프로그래밍
- Level1
- C++
- Level3
Archives
- Today
- Total
[c++] 채팅창 필터링 프로그램 ( find 함수) 본문
반응형
void filtering(string s) {
string bads[] = { "병신","바보"};
bool flag = false;
for (auto bad : bads) {
if (s.find(bad) < s.size()) flag = true;
}
if (flag)
cout << "########" << endl;
else
cout << s << endl;
}
int main() {
while (1) {
string chat;
getline(cin, chat);
if (chat == "끝") break;
filtering(chat);
}
}
한글 한글자당 2byte 이기 때문에 문자열 배열 안의 예시는 32bit이다.
안녕을 입력할 경우 bads의 원소 중에 해당하는 값이 없기 때문에 아래 조건문에서
if (s.find(bad) < s.size()) flag = true;
4294967295 < 4 의 연산을 하고 조건에 만족하지 않기 때문에 입력한 그대로 안녕을 출력한다.
4294967295인 이유 ?
- unsigned int 형이기 때문에 -1를 표현할 수 없고 2의 보수를 취하여 표현한다.
반응형
'객체지향프로그래밍 (C++)' 카테고리의 다른 글
[c++] multiple inheritance (다중 상속) (0) | 2020.07.10 |
---|---|
[c++] inhertitance (상속) (0) | 2020.07.10 |
[c++] 반복문 없이 8진수 변환 (재귀함수) (0) | 2020.07.09 |
[c++] 상속 (0) | 2020.07.09 |
[c++] class object (클래스 객체 ) - ② (0) | 2020.07.09 |
Comments