🟢 Beginner  ·  Lesson 02

C Language की History

C Language की उत्पत्ति

C की कहानी C से नहीं बल्कि उन languages से शुरू होती है जो इससे पहले थीं। इस evolution chain को समझना — BCPL → B → C — आपको यह समझने में मदद करेगा कि C को इस तरह क्यों design किया गया और यह इतनी influential क्यों बनी।

C एक practical ज़रूरत से पैदा हुई: ऐसा operating system लिखना जो powerful, portable और fast हो। C से पहले operating systems assembly language में लिखे जाते थे — जो fast तो थी लेकिन पूरी तरह hardware-specific थी। किसी दूसरे computer पर जाते ही सब कुछ दोबारा लिखना पड़ता था।

💡 C ने कौन सी problem solve की?

C से पहले अगर आपने Computer A के लिए assembly में OS लिखा, तो वो Computer B पर नहीं चलता। C ने programmers को low-level control की शक्ति दी WITH एक high-level language की portability। यह क्रांतिकारी था।

BCPL और B Language

BCPL (1967)

BCPL (Basic Combined Programming Language) को Martin Richards ने 1967 में University of Cambridge में बनाया था। यह compilers और operating systems लिखने के लिए design की गई थी। मुख्य features:

  • Typeless language — सब कुछ एक "word" (machine word) था
  • बहुत simple — कई machines पर implement करना आसान
  • Operators का उपयोग करके direct memory access

B Language (1969)

Ken Thompson ने Bell Labs में 1969 में BCPL के आधार पर B language बनाई। उन्होंने BCPL को simplify करके Bell Labs में develop हो रहे early Unix systems के लिए उपयुक्त बनाया। B की serious limitations थीं:

  • अभी भी typeless — integers, characters, pointers में कोई फर्क नहीं
  • Slow — word-addressable memory model की वजह से
  • Floating-point numbers को efficiently support नहीं कर सकती थी

इन्हीं limitations की वजह से Dennis Ritchie ने एक नई, बेहतर language बनाई।

Dennis Ritchie और Bell Labs – C का जन्म (1972)

Dennis MacAlistair Ritchie (1941–2011) एक American computer scientist थे जो Bell Labs में काम करते थे। 1969 और 1973 के बीच, उन्होंने primarily Unix operating system को rewrite करने के लिए C programming language develop की।

LanguageCreatorYearInstitution
BCPLMartin Richards1967Univ. of Cambridge
BKen Thompson1969Bell Labs, AT&T
CDennis Ritchie1972Bell Labs, AT&T

C, B से कैसे अलग थी?

  • Data Types — C में int, char, float, double आए — code safe और efficient बना
  • Structs — data को एक साथ group करने की ability
  • Typed Pointers — typed pointer arithmetic, B से बहुत अधिक powerful
  • Preprocessor#include, #define macros
🏆 Dennis Ritchie की विरासत

Dennis Ritchie ने C और Unix दोनों co-create किए। 2011 में उन्हें Information and Communications के लिए Japan Prize मिला। Bill Gates ने एक बार कहा था: "Dennis के बनाए tools — और उनके direct descendants — आज practically सब कुछ चलाते हैं।" उनका निधन 12 अक्टूबर 2011 को हुआ।

C और UNIX – एक Perfect Partnership

1973 में, Ken Thompson और Dennis Ritchie ने Unix operating system kernel को C में rewrite किया। यह computing history में एक landmark moment था दो कारणों से:

  1. Unix उन पहले operating systems में से एक बना जो assembly की बजाय high-level language में लिखे गए
  2. इसने साबित किया कि C systems programming के लिए काफी powerful है

क्योंकि Unix C में लिखा था, किसी नई machine पर Unix port करने के लिए बस उस machine के लिए C compiler लिखना था — फिर Unix उस पर run कर सकता था। इस portability की वजह से Unix (और C) 1970 के दशक में universities और research institutions में तेज़ी से फैले।

C Language Standards का Timeline

StandardYearमुख्य Additions
K&R C1978Original C — "The C Programming Language" book
C89 / ANSI C1989पहला formal standard। Function prototypes, void, const, enum
C991999Inline functions, long long int, // comments, bool
C112011Multi-threading support, anonymous structs/unions
C172018C11 के bug fixes। अभी सबसे ज़्यादा use होने वाला standard।
C232023Latest standard — नए attributes, बेहतर type safety
📌 कौन सा Standard Use करें?

सीखने के लिए: C99 या C11 use करें। Exams (GATE, B.Tech) के लिए: ANSI C / C89 पर focus करें। Specific standard के साथ compile करने के लिए: gcc -std=c11 program.c

सारांश (Summary)

  • C का evolution: BCPL (1967) → B (1969) → C (1972)
  • Dennis Ritchie ने Bell Labs, AT&T में बनाई
  • Originally UNIX operating system लिखने के लिए develop की गई
  • 1978 की K&R book ने C को universal systems language बनाया
  • Current standard C17 है; latest C23 है
  • 50+ साल बाद भी C, OS, embedded और database development में relevant है

अक्सर पूछे जाने वाले प्रश्न (FAQ)

C programming language किसने बनाई?
C को Dennis Ritchie ने Bell Labs में 1969 और 1973 के बीच बनाया, जिसमें आमतौर पर 1972 को इसका जन्म वर्ष माना जाता है। उन्होंने इसे UNIX operating system को दोबारा लिखने के लिए design किया, जो पहले assembly language में लिखा गया था।
C language क्यों बनाई गई?
C को UNIX operating system को portable और रखरखाव में आसान बनाने के लिए बनाया गया। पहले का system software assembly में लिखा जाता था, जो एक machine से बँधा था; C ने low-level programming की शक्ति उच्च-स्तरीय language की पठनीयता के साथ दी, ताकि वही code अलग computers पर चल सके।
C को किन languages ने प्रभावित किया?
C एक पुरानी language B से निकली, जिसे Ken Thompson ने लिखा था, और जो खुद BCPL से आई थी। Ritchie ने B में data types और अन्य features जोड़े, और परिणाम को B के बाद अगले कदम के रूप में C नाम दिया गया।
ANSI C standard क्या है?
ANSI C language का पहला आधिकारिक standard है, जो 1989 में American National Standards Institute द्वारा प्रकाशित और 1990 में ISO द्वारा अपनाया गया। C को standardise करने का मतलब था कि code compilers में एक-सा व्यवहार करेगा, और बाद के versions जैसे C99, C11, C17 और C23 इसे परिष्कृत करते रहे हैं।
C आज भी क्यों महत्वपूर्ण है?
C केंद्रीय बनी हुई है क्योंकि operating systems, embedded devices, और कई programming languages तथा libraries इसी से या इसके ऊपर बने हैं। इसकी गति, छोटा आकार और सीधी hardware पहुँच इसे बनने के दशकों बाद भी प्रासंगिक रखते हैं।
← Back to C Tutorial
🔗

Share this topic with a friend

यह topic किसी दोस्त को भेजें

Found it useful? Send it to a classmate learning the same thing.

अच्छा लगा? जो दोस्त यही सीख रहा है, उसे भेज दीजिए।