सी में printf फ़ंक्शन हमेशा स्क्रीन पर आउटपुट प्रिंट नहीं करता है। उदाहरण के लिए यदि आप स्ट्रिंग के अंत में \ n रखना भूल जाते हैं तो आप प्रिंटिंग कर रहे हैं कभी-कभी आपको ओ/पी नहीं मिलता है। क्या प्रिंटफ प्रिंट नहीं होने पर कुछ अन्य स्थितियां हैं। मुझे किसी को यह कहते हुए याद है कि ऐसी 7 स्थितियां हैं। क्या आप कृपया मदद कर सकते हैं।प्रिंटफ प्रिंट करने में विफल रहता है?
उत्तर
मानक आउट एक बफर स्ट्रीम है, जब तक कोई नई लाइन नहीं रखी जाती है, स्ट्रीम बंद हो जाती है, या प्रोग्राम सामान्य रूप से बाहर निकलता है, तब तक फ्लश करने की गारंटी नहीं है। यदि कार्यक्रम असामान्य रूप से बाहर निकलता है, तो स्ट्रीम के लिए फ्लश नहीं करना संभव है। मानक आउट लाइन buffered है, यही कारण है कि एक नई लाइन इसे फ्लश करेगा। ऐसे बफर हैं जो एक नई लाइन के साथ फ्लश नहीं करेंगे।
मुझे पता है कि यह एक बहुत पुराना सवाल है लेकिन प्रिंटिंग के 'printf' को किस तरह की चीज रोक सकती है? – Mouin
user1214634 ने कहा कि stdout buffered है और केवल कुछ स्थितियों के तहत स्क्रीन पर प्रिंट करता है। यदि आप इसे प्रिंट करने के लिए मजबूर करना चाहते हैं तो आप fflush (stdout)
पर कॉल नहीं कर सकते हैं, यह printf
हमेशा प्रिंट नहीं करेगा, यह कि तुरंत प्रिंट करने की गारंटी नहीं है। इसका अर्थ यह है कि यदि आप इसे डिबगिंग उद्देश्यों के लिए उपयोग कर रहे हैं, तो आप गारंटी नहीं दे सकते कि यह कोड में होने पर बिल्कुल ठीक होगा। यदि आप यह सुनिश्चित करना चाहते हैं कि यह ठीक प्रिंट करता है जब आपने कहा कि यह fflush(stdout)
पर कॉल करें।
नोट: आप आमतौर पर नहीं fflush(stdout)
उपयोग करने के लिए जब तक आप डीबग कर रहे हैं चाहते हैं, इसके वास्तव में गहन संसाधन और यदि आप गति प्रदर्शन के बारे में परवाह बिल्कुल यह संभावित आप धीमा करने के लिए है।
एक और विशेष मामला मैं बस का सामना करना पड़ा है:
मेरे चर हैं:
line="-24 hours"
line2="24 hours"
और कोशिश
printf $line
printf $line2
न तो काम करेंगे। दूसरा दूसरा शब्द "घंटों" और पहली गलतियों को छोड़ देता है -24 ध्वज के रूप में।
इसलिए, जब भी मैं printf का उपयोग मैं सभी खतरनाक वर्ण यदि संभव हो तो,
sed -r "s/[/\ #;&~]/_/g"
काश printf के कोड डेवलपर द्वारा सुधार किया जा सकता का उपयोग करके निकाल देंगे।
देखभाल करें
मैं उलझन में हूं, यह सी कैसी है? –
- 1. ज़ीरोएमक्यू सॉकेट कितनी परिस्थितियों में संदेश वितरित करने में विफल रहता है या विफल रहता है?
- 2. document.createEvent विफल रहता है
- 3. WebBrowserTask विफल रहता है
- 4. प्रिंटफ
- 5. , परिसंपत्ति precompile विफल रहता है
- 6. gclient runhooks विफल रहता है
- 7. गतिशील_कास्ट कैसे विफल रहता है?
- 8. easy_install जनहित याचिका में विफल रहता है
- 9. रूटिंग Laravel में विफल रहता है 4
- 10. पावरहेल उचित निकास कोड वापस करने में विफल रहता है
- 11. ईयूनीट निजी कार्यों का परीक्षण करने में विफल रहता है
- 12. एक सबप्रोसेस निष्पादित करने में विफल रहता है
- 13. क्रॉन्टाब पाइथन स्क्रिप्ट को निष्पादित करने में विफल रहता है
- 14. कचरा संग्रह BitmapImage पुनः प्राप्त करने में विफल रहता है?
- 15. मैवेन निर्भरता को हल करने में विफल रहता है
- 16. कैपिफोनी कैश को गर्म करने में विफल रहता है
- 17. DQL क्वेरी विफल रहता है
- 18. ASIHTTPRequest उत्पादन में विफल रहता है
- 19. fopen अदृश्य रूप में विफल रहता है
- 20. mod_wsgi दबाव में विफल रहता है
- 21. सरल Gson.fromJson उदाहरण में विफल रहता है
- 22. writeToFile विफल रहता है - मैं कैसे डिबग करता हूं यह विफल रहता है (कौन से टूल्स)?
- 23. Commit विफल रहता है: svn: प्रमाणीकरण रद्द
- 24. विधि अधिभार स्थिर + डायनामिक विफल रहता है
- 25. क्या होगा यदि नया विफल रहता है?
- 26. कबाल: कबाल कॉन्फ़िगर विफल रहता है
- 27. & nbsp; एचटीएमएल 5 सत्यापन विफल रहता है
- 28. "बंडल इंस्टॉल" विफल रहता है जबकि rspec
- 29. Mercurial क्लोन विफल रहता है सिस्टम
- 30. आईओएस पर एमएमएपी क्यों विफल रहता है?
क्या आप वाकई 'printf' के बारे में सोच रहे हैं, और सर्वनाश की पूर्व शर्त नहीं हैं? –
@KerrekSB या शायद 7 वस्तुओं के साथ एक आने वाले होमवर्क के संकेत? – cnicutar
यह आउटपुट डिवाइस पर निर्भर प्लेटफॉर्म विशिष्ट लगता है। आप किस ओएस और सिस्टम का उपयोग कर रहे हैं? –