What is C language? | C language क्या है?
C language in Hindi –
‘C’ एक प्रोग्रामिंग भाषा है जिसे 1972 में यूएसए की AT&T की बेल लेबोरेटरीज में विकसित किया गया था। इसे डेनिस रिची नाम के एक व्यक्ति द्वारा डिजाइन और लिखा गया था। सत्तर के दशक के उत्तरार्ध में, C ने उस समय की अधिक परिचित भाषाओं जैसे PLI ALGOL इत्यादि को प्रतिस्थापित करना शुरू कर दिया।
UNIX ऑपरेटिंग सिस्टम, C कंपाइलर और अनिवार्य रूप से सभी UNIX एप्लिकेशन प्रोग्राम C में लिखे गए हैं।
किसी ने भी C को आगे नहीं बढ़ाया। इसे ‘आधिकारिक’ बेल लैब्स भाषा नहीं बनाया गया। इस प्रकार, बिना किसी विज्ञापन के, सी की प्रतिष्ठा फैल गई और उसके उपयोगकर्ताओं का समूह बढ़ गया। ऐसा लगता है कि रिची इस बात से आश्चर्यचकित है कि इतने सारे प्रोग्रामर पुरानी भाषाओं जैसे फोरट्रान या पीएल/आई, या पास्कल और एपीएल जैसी नई भाषाओं की तुलना में सी को प्राथमिकता देते हैं।
Why to use C? | C का उपयोग क्यों करें?
‘C’ का उपयोग प्रारंभ में सिस्टम विकास कार्य के लिए किया गया था, विशेष रूप से वे प्रोग्राम जो ऑपरेटिंग सिस्टम बनाते हैं। C को एक सिस्टम डेवलपमेंट भाषा के रूप में अपनाया गया था क्योंकि यह ऐसे कोड का उत्पादन करता है जो असेंबली भाषा में लिखे गए कोड के समान ही तेजी से चलता है।
C के उपयोग के कुछ उदाहरण हो सकते हैं:
- Operating Systems | ऑपरेटिंग सिस्टम
- Language Compilers | भाषा संकलनकर्ता
- Assemblers | अस्सेम्ब्लेर्स
- Text Editors | पाठ संपादक
- Print Spoolers | स्पूलर्स प्रिंट करें
- Network Drivers | नेटवर्क ड्राइवर
- Modern Programs | आधुनिक कार्यक्रम
- Databases | डेटाबेस
- Language Interpreters | भाषा दुभाषिया
- Utilities | उपयोगिताओं
C Language Syllabus | सी भाषा पाठ्यक्रम
Contents
1. Getting Started
- What is C
- Getting Started with C
- The C Character Set
- Constants, Variables, and Keywords
- Types of C Constants
- Rules for Constructing Integer Constants
- Rules for Constructing Real Constants
- Rules for Constructing Character Constants
- Types of C Variables
- Rules for Constructing Variable Names
- C Keywords
- The First C Program
- Form of a C Program
- Comments in a C Program
- What is main() Variables and their Usage printf() and its Purpose Compilation and Execution
- Receiving Input
2. C Instructions
- Types of C Instructions
- Type Declaration Instruction
- Arithmetic Instruction
- Integer and Float Conversions
- Type Conversion in Assignments
- Hierarchy of Operations
- Associativity of Operators
- Control Instructions in C
3. The Decision Control Structure
- Decisions! Decisions!
- The if Statement
- The if-else Statement
- Nested if-else
- Use of Logical Operators
- The else if Clause
- The ! Operator
- Hierarchy of Operators Revisited
4. The Loop Control Structure
- Loops
- The while Loop
- The for Loop
- Nesting of Loops
- The break Statement
- The continue Statement
- The do-while Loop
- The Odd Loop
5. The Case Control Structure
- Decisions Using switch
- The Tips and Traps
- Switch versus if-else Ladder
- The goto Keyword
6. Functions & Pointers
- What is a Function
- Passing Values between Functions
- Scope Rule of Functions
- Calling Convention
- Using Library Functions
- One Dicey Issue
- Advanced Features of Functions
- Return Type of Functiong Trimal
- Call by Value and Call by Reference
- An Introduction to Pointers
- Pointer Notation
- Back to Function Calls
- Recursion
- Adding Functions to the Library
7. Data Types Revisited
- Integers, long and short
- Integers, signed and unsigned
- Chars, signed and unsigned
- Floats and Doubles
- A Few More Issues…
- Storage Classes in C
8. The C Preprocessor
- Features of C Preprocessor
- Macro Expansion
- File Inclusion
- Conditional Compilation
- if and else if Directives
- Miscellaneous Directives
- The Build Process
9. Arrays
- What are Arrays
- Array Initialization
- Array Elements in Memory
- Pointers and Arrays
- Two Dimensional Arrays
- Array of Pointers
- Three Dimensional Array
10. Strings
- What are Strings
- Pointers and Strings
- Standard Library String Functions
- Two-Dimensional Array of Characters
- An array of Pointers to Strings
- Limitation of Array of Pointers to Strings
11. Structures
- Why Use Structures
- Declaring a Structure
- Accessing Structure Elements
- How Structure Elements are Stored
- Array of Structures
- Additional Features of Structures
12. Console Input/Output
- Types of I/O
- Console I/O Functions
13. File Input/Output
- Data Organization
- File Operations
- Counting Characters, Tabs, Spaces
- A File-copy Program
- File Opening Modes
- String (line) I/O in Files The Awkward Newline Record I/O in Files
- Text Files and Binary Files Record I/O Revisited Database Management Low-Level File I/O
- A Low-Level File-copy Program, I/O Under Windows.
14. More Issues In Input/Output
- Using argc and argv
- Detecting Errors in Reading/Writing
- Standard I/O Devices
- I/O Redirection
15. Operations On Bits
- Bit Numbering and Conversion
- Bit Operations
- One’s Complement Operator
- Right Shift Operator
- Left Shift Operator
- Bitwise AND Operator
- Bitwise OR Operator
- Bitwise XOR Operator
- The showbits() Function
- Bitwise Compound Assignment Operator
16. C Under Linux
- What is Linux
- C Programming Under Linux
- The ‘Hello Linux’ Program Processes
- Parent and Child Processes
- More Processes
- Zombies and Orphans
- One Interesting Fact
- Communication using Signals
- Handling Multiple Signals
- Blocking Signals
- Event-Driven Programming
C Environment Setup
कंपाइलर स्थापित करें: अपने कोड को निष्पादन योग्य प्रोग्राम में बदलने के लिए जीसीसी या विजुअल C++ जैसा सी कंपाइलर प्राप्त करें।
एक आईडीई या टेक्स्ट एडिटर चुनें: विज़ुअल स्टूडियो कोड जैसा एक कोड एडिटर चुनें या नोटपैड जैसे एक साधारण टेक्स्ट एडिटर का उपयोग करें।
अपना कोड लिखें: अपने सी प्रोग्राम को अपनी पसंद के संपादक में निष्पादित करें और उन्हें “.c” फ़ाइल एक्सटेंशन के साथ सहेजें।
अपना कोड संकलित करें: अपने C कोड को एक निष्पादन योग्य फ़ाइल में बदलने के लिए, आमतौर पर विंडोज़ पर “.exe” एक्सटेंशन वाले कंपाइलर का उपयोग करें।
अपना प्रोग्राम चलाएँ: अपने C कोड का आउटपुट देखने के लिए संकलित प्रोग्राम निष्पादित करें।
डिबगिंग और परीक्षण: अपने कोड को डीबग करने के लिए जीडीबी या अंतर्निहित डिबगिंग सुविधाओं जैसे टूल का उपयोग करें।
लाइब्रेरी स्थापित करें (यदि आवश्यक हो): यदि आपके प्रोजेक्ट को बाहरी लाइब्रेरी की आवश्यकता है, तो उन्हें सुरक्षित रूप से इंस्टॉल और लिंक करें।
अपना वातावरण व्यवस्थित करें: अपना कोड संग्रहीत करने के लिए एक प्रोजेक्ट निर्देशिका बनाएं, और अपनी फ़ाइलों को सुव्यवस्थित रूप से प्रबंधित करें।
C language logo sample
C language viva Questions | सी भाषा मौखिक प्रश्न
- What is C language? | सी भाषा क्या है?
- What is a compiler? | कंपाइलर क्या है?
- What is a c token and what types of c tokens? | सी टोकन क्या है और सी टोकन कितने प्रकार के होते हैं?
- What is an identifier? | एक पहचानकर्ता क्या है?
- Which type of language is C? | C किस प्रकार की भाषा है?
- What is an algorithm? | एल्गोरिदम क्या है?
- What is a variable? | वेरिएबल क्या है?
- What are the data types in C? | C में डेटा प्रकार क्या हैं?
- How to declare a variable? | वैरिएबल कैसे घोषित करें?
- How many types of operators are in C? | C में कितने प्रकार के ऑपरेटर होते हैं?
- What is the use of printf and scanf functions in C? | C में printf और scanf फ़ंक्शंस का क्या उपयोग है?
- What are goto statements? | गोटो कथन क्या हैं?
- What is a loop? | लूप क्या है?
- What are loop control statements in C? | सी में लूप कंट्रोल स्टेटमेंट क्या हैं?
- What is an array? | ऐरे क्या है?
- How can we initialize an array? | हम किसी ऐरे को कैसे प्रारंभ कर सकते हैं?
- What are the types of arrays? | ऐरे कितने प्रकार की होती है?
- What is the function? | फ़ंक्शन क्या है?
- What are the types of functions? | फ़ंक्शन कितने प्रकार के होते हैं?
- What is a pointer variable? | पॉइंटर वेरिएबल क्या है?
- What is structure? | संरचना क्या है?
- What is the size of a structure? | किसी संरचना का आकार क्या है?
- What is the union? | संघ क्या है?
- What is file in C? | सी में फ़ाइल क्या है?
- What are the file opening modes present in C? | सी में फ़ाइल खोलने के कौन से तरीके मौजूद हैं?
Basic Structure of C Program
History of C language pdf | C language basics pdf
History of C language pdf download
Types of tokens in C language
1. Keywords : Examples: float, int, double, while, for.
2. Identifiers : Examples: main, amount
3. Constants : Examples: 11.4, 7812
4. Strings: Examples: “CSM”, “Thursday”
5. Special Symbols: Examples: [],{},()
6. Operators Examples: +, -,*, /
Keywords
- कीवर्ड वे शब्द होते हैं जिनका अर्थ पहले ही समझाया जा चुका है सी कंपाइलर.
- C कंपाइलर के लिए कीवर्ड का विशेष अर्थ होता है। इन कीवर्ड का उपयोग केवल उनके इच्छित कार्य के लिए किया जा सकता है; उनका उपयोग किसी अन्य उद्देश्य के लिए नहीं किया जा सकता.
- सभी कीवर्ड केवल लोअरकेस में लिखे गए हैं।
- C में केवल 32 कीवर्ड उपलब्ध हैं।
Main Function
यह किसी प्रोग्राम का “प्रवेश बिंदु” है.
main() फ़ंक्शन हमेशा पूर्णांक मान लौटाता है, इसलिए main() से पहले एक int होता है।
हम जो पूर्णांक मान लौटा रहे हैं वह 0.0 है जो सफलता का संकेत देता है।
यदि किसी भी कारण से main() में कथन अपना इच्छित कार्य करने में विफल रहते हैं तो हम main() से एक गैर-शून्य संख्या वापस कर सकते हैं, यह विफलता का संकेत होगा।
किसी भी C प्रोग्राम के लिए मुख्य कार्य अनिवार्य है।
C Operators | C ऑपरेटर्स
ऑपरेटर एक प्रतीक है जो कंपाइलर को विशिष्ट गणितीय या तार्किक प्रदर्शन करने के लिए कहता है जोड़ – तोड़। सी भाषा अंतर्निहित ऑपरेटरों से समृद्ध है और निम्नलिखित प्रकार प्रदान करती है ऑपरेटर:
- Arithmetic Operators | अंकगणित संचालक
- Relational Operators | रिलेशनल ऑपरेटर्स
- Logical Operators | तार्किक संचालक
- Bitwise Operators | बिटवाइज़ ऑपरेटर्स
- Assignment Operators | असाइनमेंट ऑपरेटर्स
Decision-Making in C | C में निर्णय लेना
निर्णय लेने वाली संरचनाओं के लिए आवश्यक है कि प्रोग्रामर प्रोग्राम द्वारा मूल्यांकन या परीक्षण करने के लिए एक या अधिक शर्तों को निर्दिष्ट करे, साथ ही एक बयान या बयानों को निष्पादित करने के लिए निर्दिष्ट करें यदि स्थिति सत्य निर्धारित की जाती है, और वैकल्पिक रूप से, अन्य बयानों के लिए यदि शर्त गलत पाई जाती है तो निष्पादित किया जाएगा।
अधिकांश प्रोग्रामिंग भाषाओं में पाई जाने वाली विशिष्ट निर्णय लेने की संरचना का सामान्य रूप निम्नलिखित है:
if statement
एक if कथन में एक बूलियन अभिव्यक्ति होती है जिसके बाद एक या अधिक कथन होते हैं।
Syntax
C प्रोग्रामिंग भाषा में if स्टेटमेंट का सिंटैक्स है:
if(boolean_expression)
{
/* statement(s) will execute if the boolean expression is true */
}
- यदि बूलियन अभिव्यक्ति सत्य का मूल्यांकन करती है, तो if कथन के अंदर कोड का ब्लॉक निष्पादित किया जाएगा। यदि बूलियन अभिव्यक्ति गलत का मूल्यांकन करती है, तो if कथन के अंत के बाद कोड का पहला सेट (घुंघराले ब्रेस को बंद करने के बाद) निष्पादित किया जाएगा।
- सी प्रोग्रामिंग भाषा किसी भी गैर-शून्य और गैर-शून्य मान को सत्य मानती है और यदि यह शून्य या शून्य है तो इसे गलत मान माना जाता है।
Father of C language | C सी भाषा के जनक
C भाषा के जनक “डेनिस रिची” हैं. उन्होंने 1972 में एटी एंड टी की बेल प्रयोगशालाओं में सी भाषा विकसित की थी.
What is an array? | ऐरे क्या है?
C language: ऐरे एक सन्निहित स्मृति स्थान है।
एक ऐरे समान डेटा प्रकार के तत्वों का एक निश्चित आकार का अनुक्रमिक संग्रह है जो एक सामान्य नाम साझा करते हैं।
यह केवल डेटा प्रकारों का एक समूह है
एक ऐरे एक व्युत्पन्न डेटा प्रकार है।
केवल सबस्क्रिप्ट का मान बढ़ाकर सरणी तत्वों को संदर्भित करना आसान है।
Types of array | ऐरे के प्रकार
one dimensional array | एक आयामी ऐरे
two-dimensional array | द्वि-आयामी ऐरे
multidimensional array | बहुआयामी ऐरे
Array Declaration | ऐरे घोषणा
C language: ऐरे डिक्लेरेशन निचे दिया है
data_type array_variable-name[size];
Data_type (डेटा_प्रकार) – उस डेटा के प्रकार को निर्दिष्ट करता है जिसे आपने उपयोग किया था और सरणी में शामिल किया था, जैसे कि int, char
Size (आकार) – उन तत्वों की अधिकतम संख्या को इंगित करता है जिन्हें सरणी के अंदर संग्रहीत किया जा सकता है।
Compile & Execute C Program | C प्रोग्राम संकलित एवं निष्पादित करें
C language: आइए देखें कि किसी फ़ाइल में स्रोत कोड को कैसे सहेजना है, और इसे कैसे संकलित और चलाना है। अगले ये सरल कदम हैं:
1. एक टेक्स्ट एडिटर खोलें और उपर्युक्त कोड जोड़ें।
2. फ़ाइल को hello.c के रूप में सहेजें
3. कमांड प्रॉम्प्ट खोलें और उस निर्देशिका पर जाएँ जहाँ आपने फ़ाइल सहेजी थी।
4. अपना कोड संकलित करने के लिए gcc hello.c टाइप करें और एंटर दबाएँ।
5. यदि आपके कोड में कोई त्रुटि नहीं है, तो कमांड प्रॉम्प्ट आपको अगली पंक्ति में ले जाएगा और एक निष्पादन योग्य फ़ाइल उत्पन्न करेगा।
6. अब, अपने प्रोग्राम को निष्पादित करने के लिए a.out टाइप करें।
7. आप स्क्रीन पर “हैलो राहुल” प्रिंट हुआ देख पाएंगे
$ gcc hello.c
$ ./a.out
Hello, Rahul
सुनिश्चित करें कि जीसीसी कंपाइलर आपके पथ में है और आप इसे स्रोत फ़ाइल hello.c वाली निर्देशिका में चला रहे हैं
Advantages of C language | C भाषा के फायदे
- सीखना आसान: C एक सरल भाषा है, जो इसे शुरुआती लोगों के लिए बेहतरीन बनाती है।
- तेज़ प्रदर्शन: C में लिखे गए प्रोग्राम तेज़ी से चलते हैं क्योंकि यह हार्डवेयर के करीब होता है।
- पोर्टेबिलिटी: सी कोड न्यूनतम परिवर्तनों के साथ विभिन्न प्रणालियों पर काम कर सकता है।
- व्यापक पुस्तकालय: सी में सामान्य कार्यों के लिए कई पूर्व-निर्मित फ़ंक्शन हैं।
- निम्न-स्तरीय नियंत्रण: आप मेमोरी और हार्डवेयर को सीधे C में प्रबंधित कर सकते हैं।
- बहुमुखी: C का उपयोग गेम से लेकर ऑपरेटिंग सिस्टम तक, अनुप्रयोगों की एक विस्तृत श्रृंखला के लिए किया जा सकता है।
- व्यापक रूप से उपयोग किया जाता है: कई अन्य भाषाएँ C का उपयोग करके बनाई गई हैं, इसलिए यह एक अच्छा आधार है।
Disadvantages of C language | C भाषा के नुकसान
- कोई अंतर्निहित सुरक्षा नहीं: C बफ़र ओवरफ़्लो जैसी सामान्य प्रोग्रामिंग त्रुटियों से सुरक्षा नहीं देता है।
- जटिल वाक्यविन्यास: शुरुआती लोगों के लिए भाषा को पढ़ना और लिखना कठिन हो सकता है।
- मैन्युअल मेमोरी प्रबंधन: आपको मेमोरी आवंटन और डीलोकेशन को संभालना होगा, जिससे बग हो सकते हैं।
- सीमित अंतर्निहित सुविधाएँ: C में नई भाषाओं में पाई जाने वाली आधुनिक सुविधाओं का अभाव है, जिससे कुछ कार्य अधिक चुनौतीपूर्ण हो जाते हैं।
- प्लेटफ़ॉर्म-निर्भर: समायोजन के बिना कोड विभिन्न प्रणालियों पर समान रूप से काम नहीं कर सकता है।
- ऑब्जेक्ट-ओरिएंटेड समर्थन का अभाव: C अन्य भाषाओं में पाई जाने वाली सुविधाजनक ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग सुविधाएँ प्रदान नहीं करता है।
- धीमा विकास: उच्च-स्तरीय भाषाओं की तुलना में C में कोड लिखने में अधिक समय लग सकता है।
What is algorithm? | एल्गोरिदम क्या है?
किसी भी कंप्यूटर प्रोग्राम को लिखने से पहले, निष्पादित किए जाने वाले चरणों के बारे में स्पष्ट होना चाहिए। प्रोग्रामर को प्रोग्राम लिखने से पहले प्रोग्रामर को प्रोग्राम के तर्क की योजना बनानी चाहिए। प्रोग्रामर को किसी दी गई समस्या को हल करने के लिए प्रत्येक चरण को निर्दिष्ट करना होता है।
इस प्रकार एल्गोरिदम की अवधारणा पेश की गई है जो निष्पादित किए जाने वाले प्रसंस्करण के तर्क का प्रतिनिधित्व करती है। एक एल्गोरिदम प्रोग्राम की रूपरेखा देने में मदद करता है।
Definition of algorithm | एल्गोरिथम की परिभाषा
एल्गोरिदम चरणों का एक सीमित अनुक्रम है, जिसे वांछित परिणाम प्राप्त करने के लिए किसी विशेष समस्या को हल करने के लिए किया जा सकता है।
Characteristics of Algorithm | एल्गोरिथम के लक्षण
प्रत्येक एल्गोरिदम को निम्नलिखित विशेषताओं को पूरा करना होगा
1. परिमितता: एल्गोरिदम को चरणों की एक सीमित संख्या के बाद समाप्त हो जाना चाहिए।
2. निश्चितता: प्रत्येक चरण स्पष्ट और सुस्पष्ट होना चाहिए।
3. प्रभावशीलता: प्रत्येक चरण इतना स्पष्ट होना चाहिए कि उसे कोई व्यक्ति पूरा कर सके
केवल पेंसिल और कागज का उपयोग करना।
4. इनपुट: एल्गोरिदम को इनपुट के रूप में शून्य या अधिक मात्राएँ स्वीकार करनी होंगी।
5. आउटपुट: एल्गोरिथम को समाप्त करने के बाद, इसे वांछित परिणाम देना होगा।