Strings in C++
C++ में strings
String text है — characters का एक क्रम। आधुनिक C++ आपको std::string type देता है (<string> से), जो आपके लिए text और उसकी memory प्रबंधित करता है। यह पुरानी C-शैली के character arrays से कहीं आसान है।
Strings बनाना
#include <iostream>
#include <string>
using namespace std;
int main() {
string name = "Amit";
string empty; // "" se shuru hota hai
cout << name << "\n";
return 0;
}Amit
String input पढ़ना
Spaces वाली पूरी line पढ़ने को getline इस्तेमाल करें; cin >> केवल एक शब्द पढ़ता है:
string full; cout << "Enter full name: "; getline(cin, full); cout << "Hello, " << full << "\n";
Output:
Hello, Amit Kumar
Strings जोड़ना
Strings जोड़ने को + या += इस्तेमाल करें — कोई विशेष functions नहीं चाहिए:
string first = "Amit", last = "Kumar"; string full = first + " " + last; full += "!"; cout << full;
Amit Kumar!
Length और characters
string s = "Hello"; cout << s.length() << "\n"; // 5 cout << s[0] << "\n"; // H s[0] = 'J'; // ek character badlein cout << s; // Jello
5
H
Jello
उपयोगी methods
| Method | यह क्या करता है |
|---|---|
s.length() / s.size() | Characters की संख्या |
s.substr(pos, len) | String का हिस्सा निकालें |
s.find("x") | Substring की स्थिति (या npos) |
s.empty() | True अगर string में कोई character न हो |
s.append("x") | अंत में जोड़ें |
C-style strings पर एक नोट
C++ पुरानी C-style strings भी समर्थन करता है — char के arrays जो '\0' null character पर खत्म होते हैं, <cstring> के functions के साथ इस्तेमाल। आप इन्हें पुराने code में देख सकते हैं, पर नए programs के लिए std::string सुरक्षित और पसंदीदा है।
आम गलतियाँ
std::stringइस्तेमाल करते समय#include <string>भूलना।- पूरे नाम के लिए
cin >> sइस्तेमाल करना और केवल एक शब्द पकड़ना। std::stringऔर C-style functions को गलत तरीके से मिलाना।s[i]से range के बाहर जाना; जाँची गई access के लिए.at(i)इस्तेमाल करें।
एक पूरा नाम getline से पढ़ें, फिर उसकी length, उसका पहला character, और नाम "Last, First" रूप में substr तथा find इस्तेमाल करके print करें।
सारांश
- Text के लिए
<string>सेstd::stringइस्तेमाल करें। getline(cin, s)पूरी line पढ़ता है;cin >> sएक शब्द।- Strings को
+और+=से जोड़ें। .length()size देता है;s[i]characters access करता है।- नए code में C-style char arrays के बजाय
std::stringपसंद करें।
अक्सर पूछे जाने वाले प्रश्न (FAQ)
C++ में string क्या है?
<string> header के std::string type का एक object है, जो आपके लिए text संग्रहीत और प्रबंधित करता है। यह अपने आप बढ़-घट सकता है, पुरानी C-शैली के character arrays के विपरीत, text संभालना कहीं आसान और सुरक्षित बनाते हुए।C++ में spaces वाली string कैसे पढ़ें?
getline(cin, str) इस्तेमाल करें, जो Enter दबाने तक spaces सहित पूरी line पढ़ता है। Extraction operator cin >> str पहले space पर रुक जाता है, तो यह केवल एक शब्द पकड़ता है।C++ में strings को concatenate कैसे करें?
std::string के साथ आप बस + operator या += इस्तेमाल करते हैं, जैसे string full = first + " " + last;। यह टुकड़ों को एक नई string में जोड़ता है, जो C-शैली strings के लिए ज़रूरी functions से कहीं सरल है।C++ में string की length कैसे पता करें?
std::string पर .length() या समकक्ष .size() call करें, जैसे name.length()। दोनों characters की संख्या लौटाते हैं, और आप name[i] या name.at(i) से अलग-अलग characters access कर सकते हैं।C++ में std::string और C-style string में क्या अंतर है?
std::string एक प्रबंधित object है जो अपनी memory और size खुद संभालता है, जबकि C-style string char का एक सादा array है जो null character पर खत्म होता है। std::string सुरक्षित और आसान है, तो यह पसंदीदा है जब तक आप पुराने C code से interface न कर रहे हों।