-
(C언어) 5. 문자열C언어 문서화 2016. 3. 22. 23:59반응형
[문자열]
(작성자의 현재 C언어 수준은 배열까지이므로 배열수준의 문자열 까지만 작성했습니다.)
상수
형식 지정자
쓰임
정수형
%d
10진 정수
실수형
%f, %lf
실수
문자형
%c
문자 1개
문자열형
%s
문자
이 표를 기억하고 있다면 당신은 이미 문자열을 알고 있다는 것이다.
문자열은 위에 보이는 문자형 형식 지정자 %c와 문자열형 형식 지정자 %s 이 두개로 표현한다.(문자 하나도 결국 문자의 개수가 1개인 문자열이라고 볼 수 있다.)
12345678910#include <stdio.h>int main(){char character_1='A', character_2[]={"A"};printf("%c\n", character_1);printf("%s\n", character_2);printf("%c\n", character_2[0]);printf("%c\n", character_2[1]);return 0;}cs 이 코드의 결과를 예상해보자.
<1:첫 번째 printf문장은 당연히 A가 출력 될것이다.
<2:두 번째 printf문장도 당연히 A가 출력 될것이다.
<3:세 번째 printf문장의 결과는 어떨까?
현재 character_2의 문자열에서는 character_2[0]에만 A가 들어있고 나머지는 \0으로 채워져 있다.
따라서 결과는 A이다.
<4:내 번째 printf문장의 결과는 어떨까?
앞서 설명했던 것처럼 character_2[1]에는 NULL문자, 즉 \0이 들어있다. 따라서 콘솔창에는 아무것도 출력되지 않는다.(뒤의 개행문자, \n만 출력된다.)
문자열은 결국 char형의 배열이라고 볼 수 있다. 같은 char형 문자들이 모여있으니 그렇게 봐도 무난하다.
문자열의 선언은 일반적으로 이렇게 한다:
char character[5]={"char");
이것이 일차원 배열이라고 보면, 이차원 배열(문자열)도 가능하다.
char character[2][5] = { {"char"}, {"rahc"}};
이런 식으로 말이다.
반응형'C언어 문서화' 카테고리의 다른 글
(C언어) 7. 함수 (0) 2016.03.25 (C언어) 6. 이진탐색 (0) 2016.03.25 (C언어) 4. 아스키코드 (0) 2016.03.22 (C언어)3. 배열 (5) 2016.03.22 (c언어) 2. 제어문 (0) 2016.03.06