6

एक और सवाल, What is a vertical tab?, वर्णन करता है कि लंबवत टैब चरित्र का मूल रूप से उपयोग किया गया था।वर्टिकल टैब के लिए एक बचने का अनुक्रम क्यों है?

लेकिन क्यों U+000B VERTICAL TAB सी और कई अन्य प्रोग्रामिंग भाषाओं में पहली जगह में एक बचने के अनुक्रम() आवंटित करने के लिए पर्याप्त महत्वपूर्ण माना गया था?

यह भी देखें: कुछ लड़के complaining about this

+0

ताकि आप इसे स्ट्रिंग/char [] में उपयोग कर सकें? –

+0

@ ई-एमईई: '' xxb'' –

+0

@Mechanicalsnail यह ''x xb'' नहीं होगा? –

उत्तर

3

यह संभव है कि जब सी बनाया गया था, तो यह अपेक्षा की जाती थी कि लंबवत टैब और घंटी वर्णों को कोड के भीतर डीलिमिटर के रूप में पर्याप्त रूप से उपयोगी होने की उम्मीद थी जो ASCII और EBCDIC के बीच पोर्ट किया जाएगा, कोड को एक पठनीय और पोर्टेबल तरीका प्रदान करना था उन्हें नोटिस करने के लिए। हालांकि एक

#define QVTAB "\013" 
printf("Field1" QVTAB "Field2");

लिख सकता है मुझे नहीं लगता कि इस तरह के उपयोग इसके अलावा सी के जल्द से जल्द बोलियों में कानूनी था, भले ही इस तरह के उपयोग की अनुमति दी है, पात्रों में से उद्धृत संस्करण के लिए विशेष मैक्रो का उपयोग कर शायद माना गया है | एक थोड़ा बदसूरत मुझे पता है कि प्रिंटफ पोर्टेबल-प्रकार प्रारूप विनिर्देशकों में ऐसी चीजें आवश्यक हो रही हैं, लेकिन इसका मतलब यह नहीं है कि यह सुंदर है।

विचार करने की एक और बात यह है कि सी प्रोग्रामिंग भाषा होने के लिए तैयार नहीं था जिसे आने वाले दशकों में लोग उपयोग करेंगे। यह कुछ तत्काल जरूरतों को हल करने के लिए डिज़ाइन किया गया था। के & आर इस बारे में परवाह नहीं करेगा कि कोई भी 1 9 70 के दशक के बाद वीटीएबी पात्रों को चाहेगा; अगर उनके तत्काल ग्राहक उनके लिए उपयोग करेंगे, तो उन्हें शामिल करने का एक बिल्कुल अच्छा कारण था।

+0

यह सोचने के लिए कि कई दशकों बाद हम \ n अभी भी हर भाषा में बहुत अधिक हैं। –

+0

@CamiloMartin: एक एम्बेडेड सिस्टम परिप्रेक्ष्य से, मैंने खुद को यह नोट करने के लिए एक अच्छा तरीका खोजना है कि एक स्ट्रिंग को स्रोत चरित्र से एक विशेष मैपिंग का उपयोग करके 'char [] 'के भीतर वर्णों में सेट किया जाना चाहिए। इस तरह के एक तंत्र ने विशेष-आवरण '\ v' की आवश्यकता को समाप्त कर दिया होगा, और अनगिनत एम्बेडेड डिवाइसों के लिए कोड लिखना अधिक आसान बना दिया होगा जो आंतरिक कोडिंग योजनाओं का उपयोग करते हैं जो ASCII से संबंधित हैं। सी भाषा में एक वीरडर समावेशन ट्रिगर समर्थन है, जो आश्चर्यजनक रूप से घृणास्पद है इससे कोई फर्क नहीं पड़ता कि कोई इसे कैसे फिसलता है। – supercat

+0

ट्रिगर समर्थन द्वारा आपका क्या मतलब है? मैं एक सी कोडर नहीं हूँ। –

5

सही उत्तर: टेली टाइप

यह सीमांकक के साथ क्या करना नाडा है। मेरे माता-पिता ने बड़े डेटा के साथ काम किया और कई ब्रॉडकास्टर्स और फॉच्र्युन 500 अभी भी 80 के दशक तक पंच कार्ड का उपयोग कर रहे थे। याद रखें कि ज्यादातर भाषाओं को मूल रूप से दर्ज किया गया था और एक टेलेटाइप मशीन पर इस्तेमाल किया गया था, न कि स्क्रीन पर। प्रिंटर सिर्फ प्रिंटिंग दस्तावेजों के लिए नहीं था जैसे आज है। सभी पर कोई मॉनीटर नहीं था। प्रिंट-आउट प्रदर्शन था।

इस बात को ध्यान में रखते हुए, लंबवत टैब बहुत उपयोगी थे। यहां तक ​​कि पोस्ट-टेलेट टाइप भी मेरे माता-पिता ने उन हिस्सों को ओवरराइट करके तेजी से फॉर्म प्रस्तुत किए। क्योंकि वापस तो पाठ-केवल प्रदर्शन भी बहुत धीमा था!

मज़ा वीडियो: https://www.youtube.com/watch?v=qv5b1Xowxdk

लेकिन बात करने के लिए और अधिक: कई, कई, आधुनिक ऑपरेटिंग सिस्टम में बहुत सी बातें टेली टाइप मशीन के अवशेष ... न सिर्फ खड़ी टैब हैं। हम उनके लिए इतना उपयोग कर रहे हैं कि लोग अब उनके बारे में भी नहीं सोचते हैं, लेकिन वे कम अजीब नहीं हैं। मुझे यकीन है कि बहुत से लोग यह नहीं समझते कि ये सम्मेलन तब से आते हैं जब तक कि वे 70 के दशक से कोडिंग नहीं कर रहे हैं।

  • आप क्या पाठ लपेटो 80 कॉलम पर अपने कोड या ई-मेल?
    क्योंकि आईबीएम पंच कार्ड 80 वर्ण चौड़े थे।

  • क्या आप नीचे ग्राफिक्स का उपयोग करते हैं जो विंडोज बिटमैप्स, या निचले कोने में मूल के साथ किसी भी ग्राफिक्स पुस्तकालयों का समर्थन करते हैं?
    क्योंकि टेलेटाइप मशीन नीचे से स्क्रॉल की गईं।

  • क्या आप पाठ की एक नई पंक्ति को इंगित करने के लिए \ n का उपयोग करते हैं?
    क्योंकि \ n लाइन फीड के लिए खड़ा है, जो मैन्युअल टाइपराइटर से आता है इससे पहले कि इसे टेलीलेट्स में इस्तेमाल किया गया था।

  • क्या तुमने कभी करने के लिए/dev/लिनक्स के तहत tty लिख कर एक दोस्त को एक संदेश भेजा है?
    क्योंकि टीटीई टेललेट के लिए छोटा है।

  • क्या आपने कभी किसी को पहिया को पुनर्निर्मित करने के बजाय मौजूदा पुस्तकालय का उपयोग करने के लिए कहा है? क्या आपने कभी लाइब्रेरी या फ्रेमवर्क का इस्तेमाल किया है?
    क्योंकि यह पुराना कोड चारों ओर लटका हुआ है। निश्चित रूप से, लाभ नुकसान से अधिक है, लेकिन पुस्तकालयों के शीर्ष पर बनाए गए पुस्तकालयों के शीर्ष पर बनाए गए पुस्तकालय इस क्रिप्टिंग निर्भरता की ओर ले जाते हैं, भले ही मूल पुस्तकालय लंबे समय से चलेगा, तब भी जो कुछ भी इसके साथ संगत था, उसके सम्मेलनों को जीने का कारण बनता है ... और ... और ...

ये टेली टाइप सम्मेलनों तो मजबूती से ऑपरेटिंग सिस्टम में ही आरोपित कर रहे हैं मैं पूरी तरह से इस उम्मीद हमेशा जब तक किसी से एक ऑपरेटिंग सिस्टम लिखते ही रहेगा खरोंच, और फिर भी मैं इतना यकीन नहीं कर रहा हूँ। कोई सवाल नहीं है कि सी भाषा ने उन्हें क्यों उठाया। याद रखें, सी एलआईएसपी, फर्थ, कोबोल, फोरट्रान, पास्कल और यहां तक ​​कि बेसिक के बाद काफी समय बाद आया था।

पीएस घंटी चरित्र का उपयोग एक डेलीमीटर के रूप में करना एक पागल चीज होता। पीसने पीसने पीसने पीसने के लिए पीस लें पीईईईईईईपी पीस चुका चुका बीईईपी पीस पीईईईपी पीस लें। Whizzzz क्लंक। पीसने पीस लें ...