들어가기 앞서
아래의 코드가 어떻게 실행이 될지 생각해 보자
#include <iostream>
using namespace std;
int main()
{
char s[] = { 'h','i'};
cout <<s;
}
아마도 hi儆儆儆試?괆?? 이것과 비슷하게 이상하게 나올 것 이다.
왜 이렇게 나오느냐?
바로 끝을 정해주지 않았기 때문이다.
문자의 끝은 '\0' 을 마지막에 추가해주면 된다.
char s[] = { 'h','i','\0'};
이런식으로 말이죠
하지만 계속 할때마다 '\0'을 붙이는건 아주 비효율적인 행동이다.
그럴때는 이제
char str [] = {"이렇게!? 이렇게?"};
이렇게 큰 따음표로 감싸면 자동으로 '\n'이 대입이 된다.
그럼 string은 char와 뭐가 다르냐? 라고 한다면
string 은 char [] 배열의 크기가 계속 변하는 가변형 문자형이며
char는 한번 정해진 배열의 크기는 바꿀수 없는 고정문자형이 가장 큰 차이라 생각한다.
아래의 코드를 봐보자.
char str[] = {'a','b','c','d'};
str = {'a','b','c','d','e','f'};
위의 코드는 이미 크기가 처음에 4로 정해진 str배열의 크기를 바꿀 수 없어 오류가 나는 것을 알 수 있다.
다음으로 문자열의 클래스 멤버함수를 알아보자
이것 이외에도 많은 멤버 함수들이 있지만.
가장 자주 사용하는 것만 나열해 보았다.
반응형
'개발' 카테고리의 다른 글
백준 25501번 재귀의 귀재 (0) | 2024.03.22 |
---|---|
C++ 열거형 (0) | 2024.03.19 |
백준 15813번 너의 이름은 몇 점이니? (0) | 2024.03.10 |
C++ 이름 입출력으로 C++ 맛보기 (0) | 2024.03.08 |
C++ 첫 걸음 (2) | 2024.03.05 |