17 – 변수 (문자열형)

문자를 나열한 문자열을 저장하는 변수로, char형을 배열(연속된 저장공간. 배열에 대해서는 나중에 천천히 보도록 하겠음.)을 이용하여 문자열형을 저장한다. 배열에 대해서는 아래와 같이 여러개의 문자 변수가 연속으로 있는 상황이다. 여기에 “abc”를 저장하면, 아래와 같이 저장된다.

%e1%84%80%e1%85%b3%e1%84%85%e1%85%b5%e1%86%b71

각각의 변수는 str[0] ~ str[3] 이런 순으로 들어있다. 이것까지 확인할 수 있는 예시를 만들어봤다.

%e1%84%89%e1%85%b3%e1%84%8f%e1%85%b3%e1%84%85%e1%85%b5%e1%86%ab%e1%84%89%e1%85%a3%e1%86%ba-2017-02-08-%e1%84%8b%e1%85%a9%e1%84%92%e1%85%ae-4-58-26%e1%84%89%e1%85%b3%e1%84%8f%e1%85%b3%e1%84%85%e1%85%b5%e1%86%ab%e1%84%89%e1%85%a3%e1%86%ba-2017-02-08-%e1%84%8b%e1%85%a9%e1%84%92%e1%85%ae-4-58-45

분자열 변수도 선언과 동시에 초기화할 수 있다. 같은 예시를 동시에 초기화하는 것을 보여주는 예시를 다음과 같이 만들어봤다.

%e1%84%89%e1%85%b3%e1%84%8f%e1%85%b3%e1%84%85%e1%85%b5%e1%86%ab%e1%84%89%e1%85%a3%e1%86%ba-2017-02-08-%e1%84%8b%e1%85%a9%e1%84%92%e1%85%ae-4-59-29%e1%84%89%e1%85%b3%e1%84%8f%e1%85%b3%e1%84%85%e1%85%b5%e1%86%ab%e1%84%89%e1%85%a3%e1%86%ba-2017-02-08-%e1%84%8b%e1%85%a9%e1%84%92%e1%85%ae-4-59-48

위에 있던 예제에서는 각 문자를 변수에 일일이 저장하였었다. 근데 수많은 문자열을 저렇게 일일이 할 수는 없기 때문에 문자열을 별도로 다루는 함수들이 존대한다. strcpy 함수를 이용하면 문자열을 배열에 한번에 저장할 수 있는데, strcpy(s, t) 함수는 문자열 t를 s에 복사하는 함수이다. string.h 헤더 파일에 정의되어 있기 때문에 헤더를 하나 더 추가해준다. 역시 아래 예시를 보면 알 수 있다.

%e1%84%89%e1%85%b3%e1%84%8f%e1%85%b3%e1%84%85%e1%85%b5%e1%86%ab%e1%84%89%e1%85%a3%e1%86%ba-2017-02-08-%e1%84%8b%e1%85%a9%e1%84%92%e1%85%ae-5-01-08%e1%84%89%e1%85%b3%e1%84%8f%e1%85%b3%e1%84%85%e1%85%b5%e1%86%ab%e1%84%89%e1%85%a3%e1%86%ba-2017-02-08-%e1%84%8b%e1%85%a9%e1%84%92%e1%85%ae-5-01-22

문자열을 다룰 수 있는 함수들은 여러모로 있기 때문에 별도로 문서를 다뤄야 한다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

이 사이트는 스팸을 줄이는 아키스밋을 사용합니다. 댓글이 어떻게 처리되는지 알아보십시오.