C언어에서는 char형 배열로서 단어나 문장 같은 문자열(string)을 처리하는데 사용된다. 일반적인 배열과 다른 점은 문자열의 맨 마지막에는 ‘\0’문자가 들어가야 한다는 것이다. 이것은 널(null)문자라고 하며 ASCII 코드값은 0이다. 문자열의 끝에 널문자를 삽입하는 것은 문자열이 어디에서 끝나는지를 명시적으로 표시하기 위해서이다.
다음의 예제를 보자.
0503-01.c |
#include <stdio.h> int main(void) { char str1[] = {'H', 'e', 'l', 'l', 'o', '\0'};//❶ char str2[] = "there"; //❷ printf("%s %s\n", str1, str2); } |
실행 결과 : |
Hello there |
위의 예제에서 ❶에서 보면 char형 배열을 초기화할 때 일반적인 배열의 초기화 방법에 따르고 있다. 이런 식으로 문자열을 초기화한다며 맨 마지막 요소로 널문자를 사용자가 명시적으로 첨가해야 한다.. 그리고 ❷를 보면 문자열을 초기화하는 두 번째 방법이 나와 있는데 그것은 큰따옴표로 단어나 문장을 묶는 것이다. 이 경우에는 맨 마지막의 널문자을 생략할 수 있는데 컴파일러가 자동으로 널문자를 삽입해 준다. 두 번째 방법이 훨씬 간결하기 때문에 문자열을 초기화할 때는 보통 이 방법을 쓴다.
출력 함수인 printf()에서 문자열을 표시하는 제어문자는 %s이다. 이 제어문자를 만나면 해당 문자열을 널문자가 나올 때까지 화면에 표시하게 된다.
'프로그래밍언어.Lib > C,C++' 카테고리의 다른 글
6.1 포인터 개요 (0) | 2016.04.15 |
---|---|
5장 연습문제 (0) | 2016.04.11 |
조건문 예제 2 (0) | 2016.04.04 |
콤마(,) 연산자 (0) | 2016.04.04 |
sizeof 연산자 (0) | 2016.04.04 |