How printf() Functions works in C Language?

How printf Function Works in C Language: जब हम Computer में कोई Program बना कर उस Program के आधार पर किसी समस्या का कोई समाधान प्राप्त करना चाहते हैं, तब हम देखते हैं कि हर Computer Program के हमेंशा तीन हिस्से होते हैं, जिन्हें Input, Process व Output कहा जाता है।

Input Section

Program के Input Section में Program को Use करने वाला User समस्या से सम्बंधित विभिन्न प्रकार के Row Data Input करता है। इन Row Data के आधार पर ही Program अपना आगे का काम सम्पन्न करके कोई Meaningful Result प्रदान करता है। इस Section में User द्वारा Input किए गए विभिन्न प्रकार के मानों को Computer की Memory में Store करने के लिए सभी Data को Memory Allot किया जाता है। User जो भी Data Input करता है, वे सभी Data उनसे सम्बंधित Memory Block में Store हो जाते हैं।

उदाहरण के लिए यदि दो संखयाओं को जोडने का Program हो, तो इस Section में कुल तीन Memory Block Allot किए जाते हैं। दो Memory Block दो संखयाओं को Store करने के लिए होते हैं और तीसरा Memory Block उन संख्‍याओं को जोडने से प्राप्त होने वाले परिणाम को Store करने के लिए होता है।

Process Section

इस Section में समस्या से सम्बंधित Input किए गए विभिन्न प्रकार के Data पर विभिन्न प्रकार के Operations Perform करके उचित Result Generate किया जाता है। उदाहरण लिए यदि दो संखयाओं को जोडने का Program हो, तो दोनों संख्‍याओं को जोडने का काम इस Section में ही किया जाता है।

Output Section

समस्या से सम्बंधित Input किए गए Data पर Required Operations Perform करने के बाद जो Results Generate होते हैं, उन Results को Monitor पर Display करने या Printer पर Print करने का काम इस Section में किया जाता है। उदाहरण के लिए दो संखयाओं को जोडने पर जो परिणाम प्राप्त होता है, उस परिणाम को इसी Section में Output Devices पर भेजा जाता है। एक User को हमेंशा Input व Output Section ही दिखाई देता है,  इसलिए Input व Output Section को हमेंशा काफी सरल व अच्छे तरीके से Represent करना जरूरी होता है, ताकि User Program से अपनी समस्या का समाधान सरल तरीके से प्राप्त कर सके।

Output Function

“C” Language में जब हम किसी परिणाम को Computer की Screen यानी Output Device पर Display करना चाहते हैं, तब हमें “stdio.h” नाम की Header File में Define किए गए printf()Function को Use करना होता है।

printf() Function

”सी” भाषा में सभी I/O Functions stdio.h नाम की Header File में होते हैं। जब हमे कोई Massage या किसी Variable में Store मान को Screen पर Display करना होता है, तो हम printf() Function का प्रयोग करते हैं। इसका Syntax निम्नानुसार है-

printf(“Massage Ctrl_String1 Ctrl_String2 ... Ctrl_String n”, Variable1, variable2, ... , variable n);

मानलो कि हम एक एसा Program बनाना चाहते हैं, जिसे Run करने पर Monitor पर एक String Display हो। चूंकि हम हमारे इस Program में किसी प्रकार का कोई भी Input व Processing नहीं कर रहे हैं, इसलिए इस Program में केवल Output Section ही होगा। यदि हम इस Program का Algorithm बनाना चाहें, तो ये Algorithm निम्नानुसार बनेगा :

Algorithm
1 START [Algorithm Starts here.]
2 PRINT “Brijvasi” [Print the message. ]
3 END [Algorithm Ends here.]

यदि इस Algorithm के आधार पर हम यदि हम “C” Language में Program बनाना चाहें, तो उसProgram का Source Code निम्नानुसार होगा :

Program
/* Printing Only One Statement on the screen . */ 
/* For Getting the I/O Services */ 
#include<stdio.h> 
/* Main Function from where Compiler Executes Program */ 
main() 
/* Starting of Main Function */ 
{ 
/* Prints the Message */ 
printf(“ Brijvasi ”); 
/* Ends the Program */ 
}

इस Program को Turbo C++ के IDE में एक New File में Type करें और File को FirstPro.c नाम से Save करें। इसके बाद File को Compile करके Run करें। File को Compile करने के लिए हम Ctrl + F9 Key Combination का प्रयोग भी कर सकते हैं। इस Key Combination का प्रयोग करने पर File Compile होकर Run भी हो जाएगी और Output में Brijvasi लिखा हुआ Print हो जाएगा।

जैसा कि पहले बताया कि सारे Input/Output Functions “C” की Library की एक Header File stdio.h में होते हैं, इसलिये Keyboard से Input लेने या Screen पर Output दर्शाने का काम इसी Header File में Stored Functions के प्रयोग द्वारा सम्पन्न होता है। इसलिये इस Program में “stdio.h” नाम की Header File को #include किया गया है।

  • हर प्रोग्राम में एक main() Function होता है। main() Function एक Special Function होता है, क्योंकि जब हम “C” Language के किसी Program को Compile करते हैं, तो Compiler सबसे पहले Source Program में main() Function को ही खोजता है और Compiler को जहां पर main() Function मिलता है, Compiler वहीं से Program को Machine Language में Convert करना शुरू करता है।
  • { } (Opening व Closing ) Curly Braces के बीच लिखे गए सभी Statements के समूह को Statement Block कहा जाता है और इन्हीं Statements का Execution होता है। चूंकि “C” Language में हर Function की शुरूआत एक Opening Curly Brace से व अन्त एक Closing Curly Brace पर होता है, इसलिए किसी भी Program के जितने भी Executable Instructions होते हैं, उन्हें main() Function के Statement Block में ही लिखा जाता है।
  • “C” Language में हर Statement का अन्त एक Semi Colon द्वारा होता है और
  • “C” में ( “ ” ) Double Quote के बीच लिखे जाने वाले Statements को String कहा जाता है।
  • printf() Function के “ ” ( Opening and Closing) Double Quotes के बीच लिखा गया Statement Screen पर ज्यों का त्यों Print हो जाता है, क्योंकि ये एक Output Statementहै, जो किसी Message या मान को Screen पर Display करने का काम करता है।

इस Program को Run करने पर हमें निम्नानुसार Output प्राप्त होता हैः

OUTPUT
Brijvasi

इसी Program को यदि चार बार Run किया जाए, तो हमें निम्नानुसार Output प्राप्त होता है :

OUTPUT
BrijvasiBrijvasiBrijvasiBrijvasi

ऐसा इसलिए होता है, क्योंकि जब हम दूसरी बार इसी Program को Run करते हैं, तब पिछली बार Run किए गए Program का Output भी हमें फिर से दिखाई देता है। यदि हम चाहें कि हम जितनी बार भी Program को Run करें, हमें पिछली बार का Output Screen पर दिखाई ना दे, तो हमें “conio.h” नाम की Header File में Define किया गया clrscr() Function Use करना होता है। जब हम इस Function को Use करते हैं, तो जिस स्थान पर इस Function को Use करते हैं, उस स्थान पर ये Function Screen पर स्थित Message को Clear कर देता है।

Program को Compile व Run करने के लिए हम Ctrl+F9 Key Combination का प्रयोग करते हैं। लेकिन जब Program को Run किया जाता है, तो Program Result को Monitor पर Display करते ही तुरन्त Terminate हो जाता है और Output को देखने के लिए हमें Ctrl+F5 Key Combination का प्रयोग करना पडता है। यदि हम चाहें कि Program Terminate होने से पहले हमें Program का Output Display करे उसके बाद Terminate हो, तो इस सुविधा को प्राप्त करने के लिए हम getch() Function का प्रयोग कर सकते हैं।

getch() Function भी “conio.h” नाम की Header File में ही Define किया गया है। ये Function Keyboard से एक Character को Input के रूप में प्राप्त करने का काम करता है। इसलिए जब हम इस Function को अपने Program में Use करते हैं, तो हमारा Program तब तक रूका रहता है, जब तक कि User Keyboard से कोई Key Press नहीं करता है।

इस स्थिति में यदि हम इस Statement को हमारे Program के अन्तिम Statement के रूप में Use करें, तो हमारा Program तब तक रूक कर Output Display करता रहेगा, जब तक कि User Keyboard से कोई Key Press नहीं कर देता। इन दोनों सुविधाओं को प्राप्त करते हुए यदि हम पिछले Program को Modify करें, तो हम इस Program को निम्नानुसार Modify कर सकते हैं :

/* Printing Only One Statement on the screen . */ 
/* For Getting the I/O Services */ 
#include<stdio.h> 

/* Main Function from where Compiler Executes Program */ 
main() 

/* Starting of Main Function */ 
{ 

/* Prints the Message */ 
printf(“ Brijvasi ”); 

/* Ends the Program */ 
}

OUTPUT
 Gopal & Krishna

Program Flow
  • जब इस Program को Run किया जाता है, तब यदि Program में किसी तरह की कोई Typing Mistake ना हो, तो “C” का Compiler सबसे पहले main() Function को खोजता है।
  • main() Function के मिल जाने के बाद Compiler main() Function के Statement Block में प्रवेश करता है और सबसे पहले clrscr() Function को Execute करता है। ये Statement Output Screen को Clear कर देता है।
  • फिर Program का अगला Statement printf() Function Execute होता है, जो Screen पर “Gopal & Krishna” Message को Display करता है।
  • अन्त में तीसरा Function getch() Execute होता है। ये Function User से एक Key Press करने का इन्तजार करता है और जब तक User Key Press नहीं करता है, तब तक वह Output को Screen पर देख सकता है। जैसे ही User Keyboard से किसी Key को Press करता है, Program Terminate हो जाता है।

printf() Function का प्रयोग सामान्‍यत: C Language के Programs का Output दिखाने के लिए किया जाता है लेकिन केवल printf() Function द्वारा ही इस जरूरत को पूरा नहीं किया जाता, बल्कि C Language में sprintf(), puts(), आदि कई और ऐसे Functions हैं, जिनका प्रयोग विभिन्‍न प्रकार की Output Display करने से सम्‍बंधित जरूरतों को पूरा करने के लिए किया जाता है और इन विभिन्‍न प्रकार के Functions के बारे में C Programming Language in Hindi पुस्‍तक में काफी Detail से व विभिन्‍न प्रकार के Real Life Example Programs के माध्‍यम से समझाया गया है, जो कि किसी भी नए C Programmer के लिए काफी उपयोगी साबित हो सकते हैं। (How printf Function Works in C Language)

How a C Program Runs?
C Language Questions

C Programming Language in Hindi - BccFalna.com ये Article इस वेबसाईट पर Selling हेतु उपलब्‍ध EBook  C Programming Language in Hindi से लिया गया है। इसलिए यदि ये Article आपके लिए उपयोगी रहा, तो निश्चित रूप से ये पुस्तक भी आपके लिए काफी उपयोगी साबित होगी। 

C Programming Language in Hindi | Page: 477 + 265 | Format: PDF

BUY NOW GET DEMO REVIEWS