728x90
C++ 03 : 문자열 연산과 문자열 비교
1. 문자열 연산
자바에서는 숫자 + 문자열 연산이 가능하나, C++에서는 문자(열)끼리의 + 연산만 가능하다.
#include <iostream>
using namespace std;
int main() {
string s1("abc"); // string 헤더파일 대부분 내용이 iosteam에 포함되므로 string헤더파일을 굳이 선언하지 않아도 됨
string s2("def");
cout << s1 + s2 << endl;;
char a = 'w';
cout << a + s2;
}
abcdef
wdef
2. 문자열 비교
1 : C-스트링을 사용하는 경우.
c언어는 true, false로 비교할 수 없기 때문에 1과 0으로 조건문을 판단한다.
c++은 true/false, 1/0의 방법 모두 사용할 수 있다.
만약 c++에서 두 문자열의 일치 여부를 C-스트링의 방법으로 판단하려면
if(strcmp(문자열1, 문자열2) == 0)과 같은 방법을 사용해야 한다.
#include <iostream>
#include <cstring>
using namespace std;
int main() {
char s1[5]; // string 헤더 파일을 사용하지 않고 문자열을 다루는 경우
char s2[5];
cout << "s1 입력 : ";
cin >> s1;
cout << "s2 입력 : ";
cin >> s2;
if( strcmp(s1, s2) == 0 )
cout << "일치";
else
cout << "불일치";
}
2 : string 클래스를 사용하는 경우
비교 연산자를 사용해서 일치 여부를 판단할 수 있다.
#include <iostream>
#include <string>
using namespace std;
int main() {
string s1, s2;
cout << "s1 입력 : ";
cin >> s1;
cout << "s2 입력 : ";
cin >> s2;
if(s1 == s2 )
cout << "일치";
else
cout << "불일치";
}
728x90
'C++' 카테고리의 다른 글
C++ 05 : 접근 지정자, 인라인 함수 (0) | 2022.04.10 |
---|---|
C++ 04 : 클래스 사용법, this의 활용, 생성자와 소멸자, 멤버 변수 초기화 방법 (0) | 2022.04.09 |
C++ 02 : 문자열 입력받기, cin, getline() (0) | 2022.03.27 |
C++ 01 : cout, cin 표준 입출력, std::와 namespace (0) | 2022.03.26 |
C++의 객체 지향 특성과 장단점 (0) | 2022.03.26 |