फॉर्मेट स्पेसिफायर (Format Specifiers)
C प्रोग्रामिंग भाषा में, %d और %i फॉर्मेट स्पेसिफायर हैं जहां %d वेरिएबल के प्रकार को दशमलव (decimal) के रूप में निर्दिष्ट करता है और %i प्रकार को पूर्णांक (integer) के रूप में निर्दिष्ट करता है। उपयोग के संदर्भ में, printf() फंक्शन आउटपुट में कोई अंतर नहीं होता जब किसी संख्या को %d या %i का उपयोग करके प्रिंट किया जाता है, लेकिन scanf का उपयोग करते समय अंतर होता है। scanf() फंक्शन %i का उपयोग करके बेस का पता लगाता है लेकिन %d का उपयोग करके बेस 10 मान लेता है।
उदाहरण (C)
#include <stdio.h>
int main() {
int num1, num2;
int num3, num4;
scanf("%i%d", &num1, &num2);
printf("%i\t%d\n", num1, num2);
num3 = 010;
num4 = 010;
printf("%i\t%d", num3, num4);
return 0;
}
आउटपुट
32767-498932064 8 8
यहां 010 एक ऑक्टल संख्या है। scanf %d का उपयोग करके संख्या को 10 के रूप में पढ़ता है और %i का उपयोग करके 8 के रूप में पढ़ता है। printf दोनों मामलों में संख्या को ऑक्टल के रूप में पढ़ने में अच्छा है।