سؤال

وعلمت اليوم أن هناك digraphs في C99 و C ++. ما يلي هو برنامج صالح:

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

وسؤالي هو: لماذا كانت موجودة

هل كانت مفيدة؟

المحلول

وتم إنشاؤها Digraphs للمبرمجين التي لم يكن لديك لوحة المفاتيح التي تدعم مجموعة الأحرف ISO 646.

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

نصائح أخرى

وأعتقد أن وجودها يمكن أن ترجع إلى <م> إمكانية أنه في مكان ما، شخص ما يستخدم مترجم مع نظام التشغيل الذي هو قديمة بحيث لا يكون بالضرورة جميع الشخصيات مجموعة الأحرف أن C أو C ++ الحاجة للتعبير عن لغة بأكملها.

وأيضا، فإنه يجعل للإدخالات جيدة في IOCCC .

واعتقد انها بسبب بعض لوحات المفاتيح على هذا الكوكب قد لا يكون مفاتيح مثل '#' و '{'.

ووdigraphs وtrigraphs في ج / ج ++ تأتي من الأيام من مجموعات الأحرف الستة قليلا المستخدمة من قبل CDC6000 (60 بت)، يونيفاك 1108 (36 بت)، DECsystem 10 و 20 أنظمة (36 بت) كل واحدة منها استخدام الملكية 64 مجموعة الأحرف غير متوافق مع ASA X3.4-1963 (الآن تعرف باسم ANSI X3.4-1963 "7 بت الوطنية الأمريكية (القانون) الموحد لتبادل المعلومات"). أحدث مراجعة هو ANSI X3.4-1986. وبما أن هذه الأنظمة قادرة على تمثيل كل من 96 نقطة متاحة الرسومية، حذفت الكثير. وبالإضافة إلى ذلك، تم تنسيق X3.4 مع غيرها من المعاهد الوطنية الموحدة (GBR، GER، ITA، الخ)، وكانت هناك نقاط التعليمات البرمجية في X3.4 التي تم تحديدها على أنها أحرف استبدال الوطنية - المثال الأكثر وضوحا هو # ليرة Britsh الرمز (وضوحا لأن اسم # الحرف هو "الجنيه" من انها الاستخدام التقليدي في التجارة الولايات المتحدة - قبل أن تطور تويتر) و '{' '} "كما تم تسمية كأحرف استبدال الوطنية. وهكذا أدخلت digraphs لتوفير آلية لأولئك أنظمة الكمبيوتر قادرة على تمثيل الشخصيات، وأيضا للبيانات المعدات الطرفية الذي كلف الأحرف استبدال وطنية لنقاط الترميز متضاربة. دي / أصبحت ثلاثي الرسوم البيانية قطعة أثرية قديمة من حساب التاريخ (موضوع لا تدرس في علوم الكمبيوتر في هذه الأيام) - ويمكن الاطلاع على ورقة شاملة عن هذا الموضوع هنا: <لأ href = "HTTP: //citeseerx.ist.psu ايدو / viewdoc / تحميل؟ دوي = 10.1.1.96.678 ومندوب = REP1 ونوع = قوات الدفاع الشعبي "يختلط =" noreferrer "> http://citeseerx.ist.psu.edu/viewdoc/download؟doi=10.1.1.96.678&rep=rep1&type = قوات الدفاع الشعبي

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top