son significado qué los fonemas ejercicios ejemplos dígrafos digrafos digrafo c++ c c99 digraphs

significado - ¿Por qué hay dígrafos en C y C++?



qué es un digrafo y 10 ejemplos (4)

Aprendí hoy que hay dígrafos en C99 y C ++. El siguiente es un programa válido:

%: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:>; %> %>

Mi pregunta es: ¿por qué existen?


Creo que es porque algunos de los teclados de este planeta podrían no tener teclas como ''#'' y ''{''.


Creo que su existencia se remonta a la posibilidad de que en alguna parte, alguien está usando un compilador con un sistema operativo cuyo conjunto de caracteres es tan arcaico que no necesariamente tiene todos los caracteres que C o C ++ necesitan para expresar el lenguaje completo. .

Además, constituye buenas entradas en el IOCCC .



Los dígrafos y trigraphs en c / c ++ provienen de los días de seis juegos de caracteres de bit utilizados por el CDC6000 (60 bits), Univac 1108 (36 bits), DECsystem 10 y 20 sistemas (36 bits) cada uno de los cuales usaba un 64 caracteres propios el conjunto no es compatible con el ASA X3.4-1963 (ahora conocido como ANSI X3.4-1963 "Código de la norma nacional estadounidense de 7 bits para el intercambio de información"). La última revisión es ANSI X3.4-1986. Como estos sistemas eran incapaces de representar todos los 96 puntos de código gráficos, muchos se omitieron. Además, X3.4 se coordinó con otros Institutos Nacionales Estándar (GBR, GER, ITA, etc.) y había puntos de código en X3.4 que fueron designados como caracteres nacionales de reemplazo; el ejemplo más obvio es el # para Britsh Pound. símbolo (obvio porque el nombre del carácter # es "signo de libra" de su uso convencional en el comercio de EE. UU., antes de la evolución de Twitter) y el ''{'' ''}'' también se designó como caracteres nacionales de reemplazo. Así, se introdujeron los dígrafos para proporcionar un mecanismo para los sistemas informáticos incapaces de representar a los personajes, y también para el equipo terminal de datos que asignó caracteres de reemplazo nacionales a los puntos de código conflictivos. Di / Tri-graphs se han convertido en un artefacto arcaico de la historia de la informática (una asignatura que no se enseña en informática en la actualidad). Se puede encontrar un documento exhaustivo sobre este tema aquí: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.96.678&rep=rep1&type=pdf