Computer >> 컴퓨터 >  >> 프로그래밍 >> C 프로그래밍

C 언어 문자열(String) 완벽 정리: 개념, 선언 및 초기화 방법

문자 배열(character array), 즉 여러 문자들의 집합을 문자열(string)이라고 합니다. C 언어에서 문자열은 프로그래밍의 기본이 되는 중요한 개념으로, 문자 데이터를 효율적으로 저장하고 다룰 수 있게 해줍니다.

문자열 선언(Declaration)

C 언어에서 문자열은 다음과 같은 형식으로 선언합니다.

char 문자열이름 [크기];

예를 들어 char a[50];과 같이 선언하면, 최대 50개의 문자를 저장할 수 있는 문자열 변수가 생성됩니다.

문자열 초기화(Initialization)

선언된 문자열은 두 가지 방법으로 초기화할 수 있습니다.

1. 단일 문자 상수를 이용한 초기화

각 문자를 하나씩 배열 요소에 대입하는 방식입니다.

char string[20] = { 'H', 'i', 'l', 'l', 's', '\0' };

2. 문자열 상수를 이용한 초기화

큰따옴표로 묶인 문자열 전체를 한 번에 대입하는 방식으로, 더 간결하고 널리 사용됩니다.

char string[20] = "Hello";

널 문자('\0')의 역할

  • '\0'은 널 문자(null character)라고 하며, 문자열의 끝을 표시하는 역할을 합니다.

  • 문자열 상수 형태로 입력이 주어지면 컴파일러가 자동으로 '\0'을 문자열 끝에 추가해 줍니다.

  • 반면 단일 문자 상수로 하나씩 초기화하는 경우에는, 사용자가 직접 마지막에 '\0'을 반드시 넣어 주어야 합니다. 그렇지 않으면 문자열의 끝을 인식하지 못해 오류가 발생할 수 있습니다.

문자열 접근(Accessing)

문자열을 출력하거나 읽어 들일 때는 제어 문자열 %s를 사용합니다. %s는 널 문자('\0')를 만날 때까지 문자열을 계속 처리합니다.

예제 프로그램

다음은 C 언어로 작성한 문자열 출력 예제입니다.

#include<stdio.h>
main ( ){
   char a[10] = "Hello";
   clrscr ( );
   printf ( " given string is %s",a)
   getch ( );
}

실행 결과

위 프로그램을 실행하면 다음과 같은 결과가 출력됩니다.

Given string is Hello

이처럼 C 언어에서 문자열은 문자 배열에 널 문자('\0')가 붙은 형태로 관리되며, 선언과 초기화 방법을 올바르게 이해하는 것이 안정적인 문자열 처리의 첫걸음입니다.