सी में इनपुट और आउटपुट उद्देश्यों के लिए प्रारूप विनिर्देशक का उपयोग किया जाता है। इस अवधारणा का उपयोग करके संकलक समझ सकता है कि स्कैनफ () फ़ंक्शन का उपयोग करके इनपुट लेने और प्रिंटफ () फ़ंक्शन का उपयोग करके प्रिंटिंग के दौरान एक चर में किस प्रकार का डेटा है। यहाँ प्रारूप विनिर्देशों की एक सूची है।
| प्रारूप विनिर्देशक | <वें>प्रकारवें>|
|---|---|
| %c | चरित्र |
| %d | हस्ताक्षरित पूर्णांक |
| %e या %E | फ्लोट्स का वैज्ञानिक संकेत |
| %f | फ्लोट मान |
| %g या %G | %e या %E के समान |
| %hi | हस्ताक्षरित पूर्णांक (छोटा) |
| %hu | अहस्ताक्षरित पूर्णांक (लघु) |
| %i | अहस्ताक्षरित पूर्णांक |
| %l या %ld या %li | लंबा |
| %lf | दोहरा |
| %Lf | लंबा डबल |
| %lu | अहस्ताक्षरित int या अहस्ताक्षरित लंबा |
| %lli या %lld | लंबा लंबा |
| %llu | लंबे समय तक अहस्ताक्षरित |
| %o | अष्टाधारी प्रतिनिधित्व |
| %p | सूचक |
| %s | स्ट्रिंग |
| %u | अहस्ताक्षरित int |
| %x या %X | हेक्साडेसिमल प्रतिनिधित्व |
| %n | कुछ भी प्रिंट नहीं करता |
| %% | % वर्ण प्रिंट करता है |
ये मूल प्रारूप विनिर्देशक हैं। हम प्रारूप विनिर्देशकों के साथ कुछ अन्य भागों को जोड़ सकते हैं। ये नीचे की तरह हैं -
-
एक ऋण चिह्न (-) चिन्ह बाएँ संरेखण को बताता है
-
% के बाद की संख्या न्यूनतम फ़ील्ड चौड़ाई निर्दिष्ट करती है। यदि स्ट्रिंग चौड़ाई से कम है, तो यह रिक्त स्थान से भर जाएगी
-
एक अवधि (.) का उपयोग क्षेत्र की चौड़ाई और सटीकता को अलग करने के लिए किया जाता है
उदाहरण
#include <stdio.h>
main() {
char ch = 'B';
printf("%c\n", ch); //printing character data
//print decimal or integer data with d and i
int x = 45, y = 90;
printf("%d\n", x);
printf("%i\n", y);
float f = 12.67;
printf("%f\n", f); //print float value
printf("%e\n", f); //print in scientific notation
int a = 67;
printf("%o\n", a); //print in octal format
printf("%x\n", a); //print in hex format
char str[] = "Hello World";
printf("%s\n", str);
printf("%20s\n", str); //shift to the right 20 characters including the string
printf("%-20s\n", str); //left align
printf("%20.5s\n", str); //shift to the right 20 characters including the string, and print string up to 5 character
printf("%-20.5s\n", str); //left align and print string up to 5 character
} आउटपुट
B 45 90 12.670000 1.267000e+001 103 43 Hello World Hello World Hello World Hello Hello
हम इन प्रारूप विनिर्देशों का उपयोग स्कैनफ () फ़ंक्शन के लिए भी उसी तरह से कर सकते हैं। इसलिए हम स्कैनफ () से इनपुट ले सकते हैं जैसे हमने ऊपर कैसे प्रिंट किया है।