यह पता लगाने के लिए कि क्या atof या _wtof स्ट्रिंग को डबल में बदलने में विफल रहता है? लेकिन यह जांचने की कोशिश करके नहीं कि परिणाम अलग-अलग रूप 0.0 है क्योंकि मेरा इनपुट 0.0 हो सकता है। धन्यवाद!यह पता लगाने के लिए कि क्या atof या _wtof विफल रहता है?
उत्तर
atof
का उपयोग न करें। इसके बजाय, strtod
उपयोग करते हैं, <cstdlib>
से, और भी errno
जाँच <cerrno>
से:
// assume: "char * mystr" is a null-terminated string
char * e;
errno = 0;
double x = std::strtod(mystring, &e);
if (*e != '\0' || // error, we didn't consume the entire string
errno != 0) // error, overflow or underflow
{
// fail
}
सूचक e
अंक अतीत पिछले भस्म चरित्र एक। किसी भी वर्णों का उपभोग करने के लिए आप e == mystr
पर भी देख सकते हैं।
, wchar_t
-strings के साथ काम करने <cwstring>
से भी std::wcstod
नहीं है।
सी ++ 11 में आप भी है std::to_string
/std::to_wstring
, <string>
से है, लेकिन मेरा मानना है कि यदि रूपांतरण, विफल रहता है जो एक वांछनीय विफलता मोड जब बाहरी डेटा के साथ काम कर नहीं किया जा सकता है कि एक अपवाद फेंकता है।
@TerranceCohen: नहीं। (लेकिन आप अभी भी पकड़ने के लिए 'errno' जांचना चाहते हैं- और अंडरफ़्लो।) –
atof
का उपयोग करके, आप नहीं कर सकते। लेकिन चूंकि यह सी ++ है, मेरा सुझाव है कि आप std::stringstream
का उपयोग करें और operator >>
को double
पर लागू करने के बाद operator !
के साथ जांचें।
- 1. यह पता लगाने के लिए कि विंडोज
- 2. यह पता लगाने के लिए कि क्या जेएमएस कनेक्शन है?
- 3. फास्टएमएम मेमोरी लीक का पता लगाने में विफल रहता है
- 4. यह पता लगाने के लिए कि क्या विंडोज सी #
- 5. यह पता लगाने के लिए कि क्या NSScrollView वर्तमान में
- 6. .chosen.change() - यह पता लगाने के लिए कि क्या यह एक चुनिंदा या अचयनित कार्रवाई है
- 7. जावास्क्रिप्ट यह पता लगाने के लिए कि क्या उपयोगकर्ता टैब
- 8. यह पता लगाने के लिए कि क्या स्पिइट को pygame
- 9. यह पता लगाने के लिए कि मेरी साइट कहां है
- 10. यह पता लगाने के लिए कि मेमोरी लीक कहां है?
- 11. यह पता लगाने के लिए कि कोई फ़ाइल बैच फ़ाइल
- 12. ASP.NET IE10 के कारण _doPostBack पता लगाने के लिए विफल रहता है अपरिभाषित है JavaScript त्रुटि
- 13. यह पता लगाने के लिए कि स्क्रीन एंड्रॉइड डिवाइस में कैपेसिटिव या प्रतिरोधी है या नहीं?
- 14. यह पता लगाने के लिए कि जीपीएस सिग्नल कमजोर या उच्च है या नहीं?
- 15. कोको: यह पता लगाने के लिए कि कोई एनएसएसटींग अपरिवर्तनीय या परिवर्तनीय है या नहीं?
- 16. यह पता लगाने के लिए कि कोई फ़ाइल पीडीएफ या टीआईएफएफ है या नहीं?
- 17. यह पता लगाने के लिए कि होस्ट डिवाइस आईफोन या आईपैड है या नहीं?
- 18. यह पता लगाने के लिए कि कोई कनेक्टेड यूएसबी प्रिंटर चालू या बंद है या नहीं?
- 19. यह पता लगाने के लिए कि कोई उपयोगकर्ता PHP
- 20. यह पता लगाने के लिए कि मेरे ऐप
- 21. यह पता लगाने के लिए कि HTML5 वीडियो इनलाइन
- 22. यह पता लगाने के लिए कि खिड़की कोको
- 23. यह पता लगाने के लिए कि कोई वेबसाइट HSTS
- 24. यह पता लगाने के लिए कि find_package पैकेज (बूस्ट)
- 25. यह पता लगाने के लिए कि जावा जावास्क्रिप्ट
- 26. यह पता लगाने के लिए कि किसी ऑब्जेक्ट को
- 27. यह पता लगाने के लिए कि कोई छवि बंडल के भीतर मौजूद है या नहीं?
- 28. यह पता लगाने के लिए कि क्या खिड़कियां हाइबरनेट या निलंबित करने जा रही हैं?
- 29. यह पता लगाने के लिए कि मेरे आईओएस एप्लिकेशन का कोई नया संस्करण है या नहीं?
- 30. यह पता लगाने के लिए कि एक चल रही लिनक्स मशीन निष्क्रिय है या नहीं
आपने अभी पता लगाया है कि एटीओएक्स फ़ंक्शंस का उपयोग क्यों खराब है। – PlasmaHH