C와 C ++에 왜 digraph가 있습니까?
나는 오늘 C99와 C ++에 digraph가 있다는 것을 배웠다. 다음은 유효한 프로그램입니다.
%:include <stdio.h>
%:ifndef BUFSIZE
%:define BUFSIZE 512
%:endif
void copy(char d<::>, const char s<::>, int len)
<%
while (len-- >= 0)
<%
d<:len:> = s<:len:>;
%>
%>
내 질문은 : 왜 존재합니까?
Digraph는 ISO 646 문자 집합을 지원하는 키보드가없는 프로그래머를 위해 만들어졌습니다.
http://en.wikipedia.org/wiki/C_trigraph
나는 그들의 존재 가 어딘가에서 문자 집합이 너무 구식이어서 C 또는 C ++가 전체 언어를 표현하는 데 필요한 모든 문자를 반드시 가질 필요는없는 운영 체제와 함께 컴파일러를 사용하고있을 가능성 으로 거슬러 올라갈 수 있다고 생각합니다. .
또한 IOCCC 에 좋은 항목을 만듭니다 .
지구상의 일부 키보드에는 '#'및 '{'와 같은 키가 없을 수도 있기 때문이라고 생각합니다.
c / c ++의 digraphs와 trigraphs는 CDC6000 (60 비트), Univac 1108 (36 비트), DECsystem 10 및 20 개 시스템 (36 비트)에서 사용 된 6 비트 문자 집합에서 나왔습니다. 세트는 ASA X3.4-1963과 호환되지 않습니다 (현재 ANSI X3.4-1963 "정보 교환을위한 7 비트 미국 국가 표준 코드"로 알려짐). 최신 개정판은 ANSI X3.4-1986입니다. 이러한 시스템은 96 개의 그래픽 코드 포인트를 모두 표현할 수 없었기 때문에 많은 부분이 생략되었습니다. 또한 X3.4는 다른 국가 표준 기관 (GBR, GER, ITA 등)과 조정되었으며 X3.4에는 국가 대체 문자로 지정된 코드 포인트가있었습니다. 가장 확실한 예는 Britsh Pound의 #입니다. 기호 (# 문자의 이름이 "파운드 기호"이므로 분명합니다. ' 미국 상거래에서의 일반적인 사용-Twitter가 발전하기 전) 및 '{' '}'도 국가 대체 문자로 지정되었습니다. 따라서 문자를 표현할 수없는 컴퓨터 시스템과 충돌하는 코드 포인트에 국가 대체 문자를 할당 한 데이터 단말 장비에 대한 메커니즘을 제공하기 위해 digraph가 도입되었습니다. Di / Tri-graphs는 컴퓨팅 역사의 고풍스러운 유물이되었습니다 (요즘 컴퓨터 과학에서 가르치지 않는 과목).-이 주제에 대한 철저한 논문은 여기에서 찾을 수 있습니다. 또한 충돌하는 코드 포인트에 국가 대체 문자를 할당 한 데이터 단말 장비를위한 것입니다. Di / Tri-graphs는 컴퓨팅 역사의 고풍스러운 유물이되었습니다 (요즘 컴퓨터 과학에서 가르치지 않는 과목).-이 주제에 대한 철저한 논문은 여기에서 찾을 수 있습니다. 또한 충돌하는 코드 포인트에 국가 대체 문자를 할당 한 데이터 단말 장비를위한 것입니다. Di / Tri-graphs는 컴퓨팅 역사의 고풍스러운 유물이되었습니다 (요즘 컴퓨터 과학에서 가르치지 않는 과목)-이 주제에 대한 철저한 논문은 여기에서 찾을 수 있습니다.http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.96.678&rep=rep1&type=pdf
참고 URL : https://stackoverflow.com/questions/432443/why-are-there-digraphs-in-c-and-c
'developer tip' 카테고리의 다른 글
백그라운드에서 새 탭을여시겠습니까? (0) | 2020.10.30 |
---|---|
“python setup.py test”에서 unittest discover를 실행하는 방법은 무엇입니까? (0) | 2020.10.30 |
Oracle에서 blob 크기를 찾기위한 dbms_lob.getlength () 대 length () (0) | 2020.10.30 |
람다를 사용하는 DbQuery.Include () 오버로드는 어디로 갔습니까? (0) | 2020.10.30 |
Linux 커널의 container_of 매크로 이해 (0) | 2020.10.30 |