यदि हम कुछ फ़ंक्शन प्रोटोटाइप का उपयोग नहीं करते हैं, और फ़ंक्शन बॉडी को कुछ अनुभाग में घोषित किया जाता है जो उस फ़ंक्शन के कॉलिंग स्टेटमेंट के बाद मौजूद होता है। ऐसे मामले में, कंपाइलर सोचता है कि डिफ़ॉल्ट रिटर्न प्रकार एक पूर्णांक है। लेकिन अगर फ़ंक्शन किसी अन्य प्रकार का मान देता है, तो यह एक त्रुटि देता है। यदि रिटर्न प्रकार भी एक पूर्णांक है, तो यह ठीक काम करेगा, कभी-कभी यह कुछ चेतावनियां उत्पन्न कर सकता है।
उदाहरण कोड
#include<stdio.h> main() { printf("The returned value: %d\n", function); } char function() { return 'T'; //return T as character }
आउटपुट
[Error] conflicting types for 'function' [Note] previous implicit declaration of 'function' was here
अब अगर रिटर्न टाइप एक पूर्णांक है, तो यह काम करेगा।
उदाहरण कोड
#include<stdio.h> main() { printf("The returned value: %d\n", function()); } int function() { return 86; //return an integer value }
आउटपुट
The returned value: 86