Mohssen A Mohssen نشر 3 ديسمبر 2021 أرسل تقرير نشر 3 ديسمبر 2021 أريد أن أستخدم النوع std::string لتخزين القيمة المرجعة من الدالة ()fget، لذلك أحتاج تحويل القيمة من نوع *char المرجعة من الدالة ()fget إلى std::string كيف أقوم بهذا الأمر في لغة ++C؟ 1 اقتباس
1 سامح أشرف نشر 3 ديسمبر 2021 أرسل تقرير نشر 3 ديسمبر 2021 يمكنك أن تقوم بإستخدام النوع std::string مباشرة، حيث يحتوي على دالة بانية تقوم بتحويل القيمة المدخله إليها إلى النوع std::string بشكل مباشر، كالتالي: const char* s = "Hsoub"; std::string str(s); std::cout << str; تقوم هذه الدالة البانية بنسخ كل حرف من النص إلى المتغير الجديد str لاحظ أن المتغير s لا يجب أن يكون نوع nullptr وإلا سيتم تنفيذ سلوكم غير معروف undefined behavior كما يمكنك أن تحدد حجم المتغير str أيضًا من خلال تمرير رقم صحيح (عدد الحروف) كمعامل ثاني، على النحو التالي: const char* s = "Hello, World!"; std::string str(s, 5); std::cout << str; // Hello 1 اقتباس
0 Wael Aljamal نشر 5 ديسمبر 2021 أرسل تقرير نشر 5 ديسمبر 2021 بالإضافة لاستخدام باني اللسلسة، يمكننا المرور على المصفوفة المحرفية باستخدام حلقة حيث نتمكن من تحديد المحارف التي نريد إضافتها / تجاهلها مما يعطي تحكم أكبر في عملية التحويل const char* str = "Hsoub Academy"; int s_size = sizeof(str) / sizeof(char); // حجم المصفوفة أو عدد الحروف string s = ""; for (int i = 0; i < s_size; i++) { if (str[i] /* condition */) { // أي شرط s += str[i]; } } return s; // string 2 اقتباس
السؤال
Mohssen A Mohssen
أريد أن أستخدم النوع std::string لتخزين القيمة المرجعة من الدالة ()fget، لذلك أحتاج تحويل القيمة من نوع *char المرجعة من الدالة ()fget إلى std::string
كيف أقوم بهذا الأمر في لغة ++C؟
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.