मैं सिर्फमुख्य यहाँ क्यों वापस नहीं आता है?
आईएसओ/आईईसी 9899 पढ़ रहा था: 201x समिति ड्राफ्ट - 12 अप्रैल, 2011
जिसमें मैं 5.1.2.2.3 कार्यक्रम समाप्ति के नीचे पाया
..reaching the } that terminates the main function returns a value of 0.
इसका मतलब है यदि आप main()
में कोई रिटर्न स्टेटमेंट निर्दिष्ट नहीं करते हैं, और यदि प्रोग्राम सफलतापूर्वक चलता है, तो मुख्य के समापन ब्रेस} पर 0
लेकिन अनुयायी में कारण कोड मैं किसी भी वापसी कथन का उल्लेख नहीं करते, फिर भी यह वापस नहीं करता है 0
#include<stdio.h>
int sum(int a,int b)
{
return (a + b);
}
int main()
{
int a=10;
int b=5;
int ans;
ans=sum(a,b);
printf("sum is %d",ans);
}
संकलन
gcc test.c
./a.out
sum is 15
echo $?
9 // here it should be 0 but it shows 9 why?
क्या आपने सी 99 (या अधिक) कंपाइलर के साथ संकलित किया था? चश्मा पढ़ने के लिए धैर्य रखने के लिए – pmg
+1 ..... – Asher
मैंने जीसीसी के साथ कोई अतिरिक्त विकल्प/ध्वज नहीं संकलित किया है? –