दिलचस्प पोस्ट
नंबरों की एक सरणी में याद आ रही संख्या ढूंढने का सबसे तेज़ तरीका एक डमी-चर उत्पन्न करें एसवीजी में पाठ का पृष्ठभूमि रंग .NET "कोड नागेट ब्लॉक"? क्या पीडीएफ भरे फॉर्म ही स्वयं को HTTPS यूआरएल में पोस्ट कर सकता है? एक्लिप्स में जावा प्रोजेक्ट: टाइप करें java.lang.Object को हल नहीं किया जा सकता। यह अप्रत्यक्ष रूप से आवश्यक वर्ग वर्गों से संदर्भित है पॉइंटर्स का उपयोग करके कॉन्स्ट वेरियल के संशोधन के बारे में भ्रम फ़ायरफ़ॉक्स में वेबआरटीसी ऑफ़र टूअरेसेवऑडियो त्रुटि मुख्य गतिविधि के बिना एंड्रॉइड एप्लिकेशन लॉन्च करें और एप्लिकेशन लॉन्च करने पर सेवा शुरू करें एनजी-मॉडल, एनजी-दोहराना, और इनपुट के साथ कठिनाई किसी भी फाइल को कैसे डाउनलोड करें और इसे सेलेनियम वेबड्रिवर का उपयोग करके वांछित स्थान पर सहेजें वर्तमान कार्य निर्देशिका को सी ++ में बदलें कॉलिंग थ्रेड एसटीए होना चाहिए, क्योंकि कई यूआई घटकों को WPF में इसकी आवश्यकता होती है लूप के काम के लिए, विशेष रूप से (;;) के लिए कैसे होता है? आईओएस 9 में ऐप ट्रांसपोर्ट सिक्योरिटी और आईपी एड्रेस

सी + + स्ट्रिंग लंबाई?

सी ++ में स्ट्रिंग में वर्णों की संख्या मुझे कैसे प्राप्त करनी चाहिए?

Solutions Collecting From Web of "सी + + स्ट्रिंग लंबाई?"

यदि आप std::string , call length() का उपयोग कर रहे हैं:

 std::string str = "hello"; std::cout << str << ":" << str.length(); // Outputs "hello:5" 

यदि आप सी-स्ट्रिंग का उपयोग कर रहे हैं, तो strlen() कॉल करें

 const char *str = "hello"; std::cout << str << ":" << strlen(str); // Outputs "hello:5" 

या, यदि आप पास्कल-स्टाइल स्ट्रिंग्स (या एफ ***** स्ट्रिंग्स के रूप में जोएल स्पोलस्की को उन्हें कॉल करना पसंद करते हैं, जैसे कि उन्हें पीछे की ओर नल लेना पसंद है) का उपयोग करना पसंद करते हैं, तो केवल पहले चरित्र को विचलित करना

 const char *str = "\005hello"; std::cout << str + 1 << ":" << *str; // Outputs "hello:5" 

जब C ++ स्ट्रिंग्स (std :: string) से निपटते हैं, तो आप लंबाई () या आकार () के लिए देख रहे हैं। दोनों को आपको समान मूल्य प्रदान करना चाहिए। हालांकि सी-स्टाइल स्ट्रिंग्स से निपटने के दौरान, आप स्ट्रेलन () का उपयोग करेंगे।

 #include <iostream> #include <string.h> int main(int argc, char **argv) { std::string str = "Hello!"; const char *otherstr = "Hello!"; // C-Style string std::cout << str.size() << std::endl; std::cout << str.length() << std::endl; std::cout << strlen(otherstr) << std::endl; // C way for string length std::cout << strlen(str.c_str()) << std::endl; // convert C++ string to C-string then call strlen return 0; } 

आउटपुट:

 6 6 6 6 

यह इस बात पर निर्भर करता है कि आप किस प्रकार स्ट्रिंग टाइप कर रहे हैं कई प्रकार के तार हैं:

  1. const char* – एक सी शैली multibyte स्ट्रिंग
  2. const wchar_t* – एक सी-शैली की व्यापक स्ट्रिंग
  3. std::string – एक "मानक" multibyte स्ट्रिंग
  4. std::wstring – एक "मानक" विस्तृत स्ट्रिंग

3 और 4 के लिए, आप .length() या .length() विधियों का उपयोग कर सकते हैं।

1 के लिए, आप strlen() उपयोग कर सकते हैं, लेकिन आपको यह सुनिश्चित करना होगा कि स्ट्रिंग चर NULL (=== 0) नहीं है

2 के लिए, आप wcslen() उपयोग कर सकते हैं, लेकिन आपको यह सुनिश्चित करना होगा कि स्ट्रिंग चर NULL (=== 0) नहीं है

गैर-मानक C ++ लाइब्रेरीज़ में अन्य स्ट्रिंग प्रकार हैं, जैसे कि एमएफसी के CComBSTR , एटीएल के CComBSTR , एसीई का ACE_CString , और इसी तरह के तरीकों के साथ जैसे कि .GetLength() , आदि। मुझे याद नहीं है कि उनके सिर मेरे सिर के ऊपर से ठीक है।

एसटीएलएसफ़्ट पुस्तकालयों ने यह सब स्ट्रेट एक्सेस शिम्स को फोन किया है, जो किसी भी प्रकार से स्ट्रिंग लम्बाई (और अन्य पहलुओं) प्राप्त करने के लिए इस्तेमाल किया जा सकता है। इसलिए समान कार्य stlsoft::c_str_len() का उपयोग करते हुए उपरोक्त सभी (गैर-मानक लाइब्रेरी वाले सहित stlsoft::c_str_len() । यह आलेख बताता है कि यह सब कैसे काम करता है, क्योंकि यह बिल्कुल स्पष्ट या आसान नहीं है

यदि आप पुराने, सी-शैली स्ट्रिंग के बजाय नए, एसटीएल शैली स्ट्रिंग का उपयोग कर रहे हैं, तो सी रन टाइम लाइब्रेरी में strlen फ़ंक्शन है:

 const char* p = "Hello"; size_t n = strlen(p); 

यदि आप std :: string का उपयोग कर रहे हैं, तो इसके लिए दो सामान्य विधियां हैं:

 std::string Str("Some String"); size_t Size = 0; Size = Str.size(); Size = Str.length(); 

यदि आप सी शैली स्ट्रिंग का उपयोग कर रहे हैं (char * या const char * का उपयोग करके) तो आप इसका उपयोग कर सकते हैं:

 const char *pStr = "Some String"; size_t Size = strlen(pStr); 
 string foo; ... foo.length() ... 

। लम्बाई और .isize समानार्थी हैं, मुझे लगता है कि "लंबाई" एक थोड़ा स्पष्ट शब्द है

 std::string str("a string"); std::cout << str.size() << std::endl; 

एक वास्तविक स्ट्रिंग ऑब्जेक्ट के लिए:

 yourstring.length(); 

या

 yourstring.size(); 

यह स्ट्रिंग इनपुट करने और इसकी लंबाई ढूंढने का सबसे आसान तरीका हो सकता है।

 // Finding length of a string in C++ #include<iostream> #include<string> using namespace std; int count(string); int main() { string str; cout << "Enter a string: "; getline(cin,str); cout << "\nString: " << str << endl; cout << count(str) << endl; return 0; } int count(string s){ if(s == "") return 0; if(s.length() == 1) return 1; else return (s.length()); } 

एसटीडी नेमस्पेस के बारे में परेशान किए बिना स्ट्रिंग की लंबाई प्राप्त करने का सबसे आसान तरीका इस प्रकार है:

बिना / रिक्त स्थान के साथ स्ट्रिंग

 #include <iostream> #include <string> using namespace std; int main(){ string str; getline(cin,str); cout<<"Length of given string is"<<str.length(); return 0; } 

रिक्त स्थान के बिना स्ट्रिंग

 #include <iostream> #include <string> using namespace std; int main(){ string str; cin>>str; cout<<"Length of given string is"<<str.length(); return 0; }