기초지식

08-2. 4대 문자열

로만주 2023. 5. 17. 19:08

▶ C / C++ 언어의 문자열 조작 함수 (char + 함수)

◇ 일반적으로 쓰이는 내용들을 래핑시킴

string은 밀키트 느낌으로 이해하면 괜찮음

코딩테스트에서 할 수 있고 없고에 기준을 세울 수 있음

 

- 문자와 문자열을 다룰 때 일반적으로 사용 할 수 잇는 기능들의 집합

 

- 4대 문자열은 기본적으로 숙지를 반드시 해야 한다.

 

1. strlen

ㄴ 문자열의 길이를 계산

오류를 방지하기 위해서 크기 계산을 반드시 해줘야 함.

 

2. strcmp

ㄴ 문자열을 비교하는 기능

ㄴ 같을 경우 0, 왼쪽 문자열이 클 경우 양수, 왼쪽 문자열이 작을 경우 음수

문자열 순으로 비교해 같을 경우 다음 문자 비교하고 다를 경우 결과값을 출력

문자 크기는 아스키 코드 기준으로 보임.

 

3. strcpy

ㄴ 문자열을 복사하는 기능

 

4. strcat

ㄴ 문자열을 합치는 기능

 

5?. strtok

ㄴ 문자열을 자르는 기능

4대 문자열 조작 함수에 포함되지않지만 알아둘 필요 있음

 

1. strlen() : 문자열 길이
ㄴ EX) strlen("문자열");

2. strcmp(문자열, 문자열): 문자열 비교

int strcmp(char* str1, char* str2)
{
	if (두문자가 같은가?)
    {
    	return 0;
	}
    else
    {
    	if (앞문자가 더 큰가?)
        {
        	return -1;
		}
        else
        {
        	return 1;
        }
    }
    return 0;
}

3. strcpy(문자열, 문자열): 문자열 복사

strcpy(strF, strE);
strcpy_s
strncpy
strncpy_s

4. strcat(문자열, 문자열): 문자열 연결

5. strtok(): 문자열 자르기
ㄴ 4대 문자열은 아니지만 파일 입출력에 많이 쓰인다.
ㄴ 윈도우가 좋아하는 함수 (텍스트 + INI)
ㄴ 자를 조건 EX: _ / \ 등등..
ㄴ 개인적인 추천: 웬만하면 ',' 는 쓰지않도록 한다.
◇ 게임 프로그래밍에 굉장히 많이 쓴다. EX) 세이브 & 로드

문자"열"
char strJ[100] = "문자열";
char* strK = "이렇게도 사용이 가능하네?";
std::string strZ = "이것도 된다.";
const char* strW = "나는 왜 빼먹지?";
◇ C에서 문자열을 선언할 수 있는 모든 방법
◇ 각기 용도가 다르며 2, 3, 4는 메모리 구조와 관련이 있다.