나만의 작은 도서관
[문자열] str1 == str2 는 TRUE? 본문
여러가지 프로그래밍 언어를 배우다 보면 문자열에 대한 의심이 많아진다.
어떤 언어는 같고, 어떤 언어는 같지 않고... 언어에 따라 달라지니 문자열 판정은 늘 헷갈리는 문제이다.
이 글은 C++에서 서로다른 변수가 같은 문자열을 가지면 같은 판정인지 실험해본 내용을 담고있다.
#include <iostream>
#include <string>
using namespace std;
int main(void) {
string str = "Hello";
string str2 = "Hello";
if (str == "Hello") cout << "equal" << '\n';
if (str == str2) cout << "equal2" << '\n';
return 0;
}
출력결과
equal
equal2
출력결과와 같이 변수든, 직접적인 문자열이든, C++은 일치 여부를 판단할 때 같다고 판단하는 것을 볼 수 있다.
메모리 주소의 일치 요소는 문자열에선 고려하지 않는 듯 하다.
'C++ > 문법 및 메소드(STL)' 카테고리의 다른 글
[C++][Keyword] 타입의 별칭: typedef, using 키워드 (0) | 2024.12.21 |
---|---|
[C++][Keyword] 소속을 구분하기 위한 네임스페이스(namespace) (0) | 2024.12.21 |
[문자열] 문자열을 정수로 stoi(), 숫자를 문자열로 to_string() (0) | 2024.03.21 |
[문자열] 일부 문자열 반환 substr(), 문자열 길이 반환 length() (0) | 2023.06.25 |
[문자열] 특정 문자열 찾기 find(), 문자열 부분 교체 replace() (1) | 2023.06.24 |