본문 바로가기

프로그래밍/C++

C++ 문법 - 문자열 string

< String >


문자열을 사용하기 위해 그동안 char 배열을 사용했습니다.


1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
 
using namespace std;
 
int main()
{
    char name[20];
    cin >> name;
    cout << "이름 : " << name << endl;
    return 0;
}
cs


언제나 생기는 문제점은 몇 글자가 들어오게 될지 모른다는 것입니다.

20칸 짜리 char 배열을 만들어두었기 때문에 20글자를 넘어가는 이름이 입력된다면 에러가 발생합니다.


이를 해결하기 위해 동적할당을 사용한 적이 있습니다.


더 간단한 해결책으로 같은 원리로 만들어진 string이라는 클래스를 사용할 수 있습니다.

네. 클래스입니다.


#include <string> 으로 string 클래스에 대한 헤더 파일을 포함해 사용합니다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <string>
 
using namespace std;
 
int main() {
    string name;
    cin >> name;
    cout << "이름 : " << name << endl;
    cout << "길이 : " << name.length() << endl;
 
    name.append(" 추가");
    cout << "append 후 이름 : " << name << endl;
 
    name.insert(2"insert ");
    cout << "insert 후 이름 : " << name << endl;
 
    name.clear();
    cout << "clear 후 이름 : " << name << endl;
}
cs


< string 클래스 메소드 목록 >


- 주로 사용 -


s.length() : 문자열의 길이 반환

s.append(문자열) : 문자열 뒤에 다른 문자열을 추가

s.insert(인덱스, 문자열) : 인덱스부터 문자열 추가

s.clear() : 문자열 초기화 / 비우기


- 모든 메소드 확인 -

'프로그래밍 > C++' 카테고리의 다른 글

C++ 문법 - 가상함수  (0) 2018.02.19
C++ 문법 - 업캐스팅  (0) 2018.02.19
C++ 실습 - 체이닝 해시 알고리즘 구현  (0) 2018.02.12
C++ 실습 - 링크드리스트  (0) 2018.02.12
C++ 실습 - 암호화  (0) 2018.02.12