Frage

Ich habe heute, dass es Digraphen in C99 und C ++. Im Folgenden ist ein gültiges Programm:

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

Meine Frage ist: warum sie existieren

?
War es hilfreich?

Lösung

Digraphen wurden für Programmierer erstellt, die keine Tastatur hatte, die den ISO 646 Zeichensatz unterstützt.

http://en.wikipedia.org/wiki/C_trigraph

Andere Tipps

Ich glaube, dass ihre Existenz zurückverfolgt werden kann, die Möglichkeit , dass irgendwo jemand einen Compiler mit einem Betriebssystem, dessen Zeichensatz verwendet, ist so veraltet, dass es notwendigerweise alle Zeichen nicht haben dass C oder C ++ Notwendigkeit, die ganze Sprache.

auszudrücken

Außerdem macht es für eine gute Einträge in der IOCCC .

Ich denke, es ist, weil einige der Tastatur auf diesem Planeten möglicherweise nicht Tasten wie ‚#‘ haben und ‚{‘.

Die Digraphen und trigraphs in C / C ++ kommen aus den Tagen des Sechs-Bit-Zeichensätze durch die CDC6000 verwendet (60 Bits), Univac 1108 (36 Bits), DECsystem 10 und 20 Systeme (36 Bits), von denen jede ein benutztes proprietäre 64 Zeichen nicht kompatibel mit dem ASA X3.4-1963 (Jetzt weiß wie ANSI X3.4-1963 "7-Bit-American National Standard Code for Information Interchange") festgelegt. Die neueste Version ist ANSI X3.4-1986. Da diese Systeme alle der unfähig waren 96 graphischen Codepunkte zu repräsentieren, wurden viele weggelassen. Darüber hinaus wurde X3.4 mit anderen National Standard Institute koordiniert (GBR, GER, ITA, etc) und es gab Codepunkte in X3.4, die als nationale Ersatzzeichen bezeichnet wurden - das offensichtlichste Beispiel ist die # für die Britsh Pound Symbol (offensichtlich, weil der Name des # Zeichens „Rautenzeichen“ aus es in der US-Handel übliche Nutzung ist - vor der der Entwicklung von Twitter) und die ‚{‘ ‚}‘ wurden auch als nationale Ersatzzeichen bezeichnet. So wurden Digraphen unfähig, einen Mechanismus für die Computersysteme zu schaffen, eingeführt, um die Zeichen zu repräsentieren, und auch für die Datenen nationalen Ersatzzeichen zu den widerstreitenden Codepunkte zugeordnet. Di / Tri-Graphen eine archaische Artefakt der Berechnung Geschichte geworden sind (ein Thema nicht in diesen Tagen in der Informatik gelehrt) - Eine erschöpfende Papier zu diesem Thema finden Sie hier: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.96.678&rep=rep1&type = pdf

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top