आज, मैं getchar()
का उपयोग करता है वर्ण आप इनपुट गिनती करने के लिए कोड का एक सरल टुकड़ा लिखा था। लेकिन जब मैं इसे सिगविन पर संकलित करता हूं, तो यह काम नहीं करता है। यह हमेशा 0 प्रिंट, लेकिन मैं कभी नहीं इनपुट कुछ भी या मैं नहीं कर सकते इनपुट कोई भी वर्ण यह 0.getchar() सही क्यों काम नहीं करता है?
प्रिंट हालांकि, अगर मैं इसे कुलपति ++ 6.0 के साथ संकलन, यह काम करता है।
#include<stdio.h>
int main(void)
{
long nc;
nc = 0;
while(getchar() != EOF)
++nc;
printf("The total of characters you inputed is %ld.\n", nc);
return 0;
}
क्या आप cygwin पर संकलित करने के लिए प्रयोग कर रहे हैं? मेरे पास साइगविन है और संकलन करने के लिए वीसी का उपयोग करें और यह ठीक काम करता है। – hmjd
आपका सटीक कोड साइगविन (जीसीसी के साथ संकलित) में मेरे लिए पूरी तरह से काम करता है। ईओएफ भेजने के लिए आपको नियंत्रण-डी हिट करना होगा। –
कैसे * आप * प्रोग्राम चला रहे हैं? क्या होता है जब आप 'echo हैलो | ।/your_program' एक सिग्विन बाश खोल प्रॉम्प्ट से? क्या होगा यदि आप केवल '।/Your_program' टाइप करते हैं, फिर' हैलो 'टाइप करें, फिर एंटर करें, फिर कंट्रोल-डी? –