C++에서 string은 일종의 배열 형태다. 배열에 문자를 한개씩 넣은거라 볼 수 있다.
string s1 = "OH";
string s2 = "Hello World";
string s3 = " ";
char *c1 = "cstr";
2. string 합치기
s3 = s1 + s2;
s3.append("write what you want");
// 개수, 더할 문자 -> 'aaa'
s3.append(number, 'a');
//s3에 s1의 index부터 number개까지 합치기
s3.append(s1, index, number);
3. string 크기 확인
s.length();
s.size();
4. string 특정 위치 문자
s3.at(index);
s3.find("Hello");
6. string 비교
if (s3.compare(s2) == 0){
//s3 = s2
}
else if (s3.compare(s2) < 0){
//s3가 s2보다 사전 순으로 앞
}
else if (s3.compare(s2) > 0){
//s3가 사전 순으로 뒤
}
7. string 할당된 크기
s3.capacity();
8. string 지우기
//문자열 모두 지우기
s3.clear();
//index부터 number개까지 지우기
s3.erase(index, number);
9. string 바꾸기
//index부터 number까지 "string"으로 바꾸기
s3.replace(index, number, "string");
10. string & char 변환
//char -> string
char *c = "hello";
string s = c;
//string -> char
string s = "hello";
const char *c = s.c_str();
//char -> int
char *c = "123456";
int n = atoi(c);
//string -> int
string s = "12345";
int n = atoi(s.c_str());
10-1. atoi 응용 : 정수 확인
11. 문자 기준으로 문자열 자르기
if(atoi(s.c_str()) != 0 || s.compare("0") == 0){
// this is integer.
}
11. 문자 기준으로 문자열 자르기
char c[100] = "helloooo worldddd nice to meeeet you";
char* token = strtok(c, " ");
while(token != null){
//do something
token = strtok(null, " ");
}
댓글
댓글 쓰기