76 votes

Pourquoi y a-t-il des digrammes en C et C ++?

J'ai appris aujourd'hui qu'il existe des digrammes en C99 et C ++. Ce qui suit est un programme valide:

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

Ma question est: pourquoi existent-ils?

69voto

CTT Points 7235

Les digraphes ont été créés pour les programmeurs dépourvus de clavier prenant en charge le jeu de caractères ISO 646.

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

25voto

Greg Hewgill Points 356191

Je pense que leur existence peut être attribuée à la possibilité que, quelque part, quelqu'un utilise un compilateur avec un système d'exploitation dont le jeu de caractères est tellement archaïque qu'il ne contient pas nécessairement tous les caractères dont C ou C ++ a besoin pour exprimer tout le langage. .

En outre, il fait de bonnes entrées dans le IOCCC .

15voto

ChrisW Points 37322

Je pense que c'est parce que certains claviers de cette planète pourraient ne pas avoir de touches comme '#' et '{'.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X