기본 제공하는 자료형이 아닌 string 객체를 사용해 문자열을 다루는데 이는 간단하고 명료하다.
#include "stdafx.h"
#include <iostream>
#include <string>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
// 원본 문자열
string orgString = "TEST STRING";
cout << "STRING_LENGTH : " << orgString.size() << "\n";
// 대상 문자열 & 복사
string tarString = orgString;
// 문자열 출력
cout << "ORG_STRING : " << orgString << "\n";
cout << "TAR_STRING : " << tarString << "\n";
// 문자열 비교
if (tarString == orgString){
cout << "compare \"" << orgString << "\" :::: \"" << tarString << "\" indentical.\n";
}
else
{
cout << "compare \"" << orgString << "\" :::: \"" << tarString << "\" not indentical.\n";
}
// 문자열 결합
string addString = "+ADD STRING";
addString = orgString + addString;
cout << "ADD_STRING : " << addString << "\n";
// 문자열 찾기
int stringIndex = addString.find("+ADD");
// - 배열과 동일하게 생각하여 +ADD는 12번째 즉, 인덱스 11에 위치한다.
cout << "FIND_STRING : " << stringIndex << "\n";
// 문자열 자르기
string cutString = addString.substr(12, 3);
// - 대상 문자열의 12번째 부터 3자리의 글자를 읽어온다.
cout << "CUT_STRING : " << cutString << "\n";
return 0;
}
* <링크 : C스타일 문자열다루기>와 비교해 훨씬 간단명료해지고 많은 기능을 지원해줌을 알 수 있다.