2017-04-19 10 views
0

문자 상수로서 (C11)에 정의되어
구문
    문자 전율 :
      '은 C-문자 시퀀스'
      L 'C-문자 시퀀스 '
     'c-char-sequence '
      U 'C-문자 시퀀스'
    C-숯 서열
      C-CHAR
      C-문자 시퀀스 C-CHAR
    C - 문자 :
      작은 따옴표 ', 백 슬래시 \ 또는 개행 문자를 제외한 소스 문자 집합의 모든 구성원
      이스케이프 시퀀스
C11에서 문자 상수를 재귀 적으로 정의하는 이유는 무엇입니까?

단일 따옴표 안에 하나 이상의 C-문자가 그래서 'ABC'처럼, 재귀 적으로 정의된다.
그러나 알고 있듯이 문자 상수에는 'a'와 같은 하나의 c-char 만 포함되어 있습니다. 그렇습니까?

+0

문자는 내가 아는 한 UTF-8입니다. ASCII가 할 수있는 것 이상의 문자를 지원할 수 있습니다. 여기를 참조하십시오 http://stackoverflow.com/questions/10229156/how-many-characters-can-utf-8-encode –

답변

0

내가 아는 바로는 문자 상수에는 'a'와 같은 하나의 c-char 만 포함되어 있지 않습니까?

아니요, 'abcd'도 문자 상수입니다. 그 값은 기술적으로 구현이 정의되어 있지만, 내가 본 모든 곳은 빅 엔디안 순서 (0x61626364)의 char 값으로 구성됩니다.

cppreference의 C면에 대한 설명이 있습니다. 다양한 character constants