सीधे मुख्य सामग्री पर जाएं

printf फंक्शन

चूँकि printf फंक्शन का प्रयोग हम हर प्रोग्राम में करते है इसलिए आगे बढ़ने से पहले इस फंक्शन के बारे जान लिया जाये जिससे आगे के पेज समझने में आसनी होगी।

जैसा कि हम पहले ही पढ़ चुके हैं कि printf फंक्शन stdio.h हैडर में डिफाइन किया गया है और हम हर प्रोग्राम में stdio.h को #include<stdio.h>लिखकर लोड करते है।

printf फंक्शन का प्रयोग स्क्रीन पर कोई भी text लिखने के काम आता है। अर्थात (" ") के बीच में जो कुछ लिखते हैं वो स्क्रीन पर छप जाता है।

printf फंक्शन में ( ) के बीच एक से ज़्यादा argument लिख सकते हैं जो की कॉमा के माध्यम से अलग किये जाते है। उधारण के लिए -

printf ("My number is %d", 80);

यहाँ पर printf के दो argument या parameter हैं - 
१. "My number is %d" और
२. 80

दोनों ही argument कॉमा , के माध्यम से अलग किये गए हैं। और अंत में ; का प्रयोग के बारे में आप सब पहले से अवगत हैं।

अब नीचे के प्रोग्राम को ध्यान से अवलोकित कीजिये-

#include <stdio.h>
int main(){
 int marks = 90;
 float percent = 89.4f;
 char *name = "Ramesh";
 char grade = 'A';
 printf("Name- %s. Maths- %d. Percent- %f. Grade- %c.", name, marks, percent, grade);
 return 0;
}
Output:
Name- Ramesh. Maths- 90. Percent- 89.500000. Grade- A.

जैसा कि आप देख सकते हैं कि हमने पहले 4 वेरिएबल (name, marks, percent, grade) को डिफाइन किया है और इनका प्रयोग printf फंक्शन में किया है।

तो चलिए अब printf के बारे में विस्तार से जानते हैं। जैसे ही प्रोग्राम printf फंक्शन पर पहुँचता है तो पहले argument को पढता है। " " के बीच लिखे अक्षरों को पढता है और एक एक करके स्क्रीन पर छाप देता है। पर जैसे ही वो % को पढता है तो वो उसको स्क्रीन पर न छाप कर अगले अक्षर को पढता है और और उसके अनुसार argument 2 के मान को %s की जगह विस्थापित कर देता है। जैसे कि ऊपर के प्रोग्राम में स्क्रीन पर Name- Ramesh छाप देगा। और फिर वो आगे बढ़ेगा और आने वाले अक्षर को छापता हुआ जैसे ही %d पर पहुंचेगा वैसे ही अब वो argument 3 के मान को उसकी जगह विस्थापित कर देगा। ये प्रक्रिया आगे बढ़ेगी और " पर आकर समाप्त हो जायेगी।

जैसे कि अपने देखा कि %s दूसरे argument से, %d तीसरे argument से विस्थापित हुआ। इसलिए ध्यान रहे कि हम % के बाद जो अक्षर लिख रहे है वो सम्बंधित argument के डाटा टाइप से मेल खाना चाहिये।


टिप्पणियाँ

इस ब्लॉग से लोकप्रिय पोस्ट

Stack Data Structure in Hindi / स्टैक डाटा स्ट्रक्चर