반응형
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 | 31 |
Tags
- LeetCode
- dp
- 배열
- 고득점Kit
- Doitvue.js입문
- 프로그래밍
- 백준
- sql
- Medium
- 카카오
- 프로그래머스
- 웹프로그래밍
- OS
- 리액트
- 자바스크립트
- Level1
- 파이썬
- Level2
- Level3
- C++
- web
- 동적계획법
- 리트코드
- 코테연습
- react
- javascript
- VUE
- CS
- typescript
- python
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