में स्ट्रिंग की तुलना करना, मैं फ़ाइल में टिप्पणियों की जांच के लिए स्ट्रिंग के पहले तत्व के साथ एक अक्षर अक्षर की तुलना करना चाहता हूं। एक char का उपयोग क्यों करें? मैं इसे एक समारोह में बनाना चाहता हूं, जो टिप्पणी के लिए एक चरित्र var स्वीकार करता है। मैं एक स्ट्रिंग की अनुमति नहीं देना चाहता क्योंकि मैं इसे लंबाई में एक वर्ण में सीमित करना चाहता हूं।कैरेक्टर लिटल से स्ट्रड :: सी ++
इस बात को ध्यान में रखते हुए मुझे लगता है कि जाने का आसान तरीका चरित्र को संबोधित करना होगा और इसे std :: स्ट्रिंग की तुलना फ़ंक्शन में पास करना होगा। हालांकि यह मुझे अनपेक्षित परिणाम दे रहा है।
मेरे कोड इस प्रकार है:
#include <string>
#include <iostream>
int main (int argc, char *argv[])
{
std::string my_string = "bob";
char my_char1 = 'a';
char my_char2 = 'b';
std::cout << "STRING : " << my_string.substr(0,1) << std::endl
<< "CHAR : " << my_char1 << std::endl;
if (my_string.substr(0,1).compare(&my_char1)==0)
std::cout << "WOW!" << std::endl;
else
std::cout << "NOPE..." << std::endl;
std::cout << "STRING : " << my_string.substr(0,1) << std::endl
<< "CHAR : " << my_char2 << std::endl;
if (my_string.substr(0,1).compare(&my_char2)==0)
std::cout << "WOW!" << std::endl;
else
std::cout << "NOPE..." << std::endl;
std::cout << "STRING : " << my_string << std::endl
<< "STRING 2 : " << "bob" << std::endl;
if (my_string.compare("bob")==0)
std::cout << "WOW!" << std::endl;
else
std::cout << "NOPE..." << std::endl;
}
मुझे देता है ...
STRING : b
CHAR : a
NOPE...
STRING : b
CHAR : b
NOPE...
STRING : bob
STRING 2 : bob
WOW!
समारोह ऐसा क्यों लगता है सब-स्ट्रिंग और चरित्र ही नहीं हैं। वर्णों और std :: स्ट्रिंग वर्र्स की उचित तुलना करने का सबसे छोटा तरीका क्या है?
(मेरे सवाल का से बचने के पुनर्वर्गीकरण .... बेझिझक छोड़ के लिए एक छोटी शेख़ी)
जब मैं कम से कम मेरा मतलब है का कहना है कि वाग्मिता कोडिंग के लिए की इच्छा के चलते। कृपया ध्यान दें, यह होमवर्क प्रश्न नहीं है। मैं एक रासायनिक इंजीनियरिंग पीएचडी उम्मीदवार हूं और स्वतंत्र शोध के हिस्से के रूप में कोडिंग कर रहा हूं। मेरे पिछले प्रश्नों में से एक को उपयोगकर्ता msw (जिसे एक स्नैप टिप्पणी भी मिली) द्वारा "होमवर्क" के रूप में पुनः वर्गीकृत किया गया था, जब मैंने दक्षता के बारे में पूछा, जिसे मैंने दुर्व्यवहार की सीमा पर विचार किया था। मेरा कोड दूसरों द्वारा पुन: उपयोग किया जा सकता है या नहीं, लेकिन मैं इसे पढ़ने और रखरखाव करने में आसान बनाने की कोशिश कर रहा हूं। जहां भी संभव हो सके मेरे कोड को यथासंभव कुशल बनाने की एक विचित्र इच्छा है। इसलिए दक्षता और वाक्प्रचार पर सवाल।
और भूल जाते हैं यह देखना होगा कि '0