الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

اريد ان استخدم string داخل ال switch ؟

مغلق
بدأه مجلـد جديـد في 17 يونيو 2007 · 6 رد · 817 مشاهدة · في لغة C و ++C
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

حاولت ان استخدم ال string داخل الswitch ولكن الcompiler يظهر خطأ ويقول ان القيمة يجب ان تكون integers !

من الصعوبة التحويل الى if و else لان القائمة طويلة جداً أكثر من 30 حالة .

مثال بسيط :

#include <iostream>
#include <string>
using namespace std;

int main()
{
	string n;
	cin >> n;

	switch( n )
	{
			case "sfd":
				 cout <<"1";
				 break;

			case "xfx":
				 cout <<"2";
				 break;

				 }


	return 0;
}

ماهو الحل برأيكم ؟

تم تعديل هذه المشاركة بواسطة مجلـد جديـد في 17 يونيو 2007 في 13:46

#2

طب انت عم تقارن ب char ليه ما تخلية Char بدل String

سلااااااااام

:D

Computer Engineer

2007

"اللهم يا مثبت القلوب ثبت قلبي على دينك "

ولدتك امك باكيا والناس حولك يضحكون سرورا

فافعل لنفسك ان تكون اذا بكوا في يوم موتك ضاحكا مسرورا

#3

كتبت المثال على السريع ، وقمت بتعديله :)

المطلوب ان يكون في خانة case هو string وليس char .

#4

أعتقد ان switch تستقبل حرف واحد أو أرقام فقط

#5

هنا مشروح الطريقة تماما :

Switch On String implementation :

http://www.codeguru.com/cpp/cpp/cpp_mfc/article.php/c4067/

Computer Engineer

2007

"اللهم يا مثبت القلوب ثبت قلبي على دينك "

ولدتك امك باكيا والناس حولك يضحكون سرورا

فافعل لنفسك ان تكون اذا بكوا في يوم موتك ضاحكا مسرورا

#6

مشاركه طيبة يا وايت سوول :)

#7

في مكتبة CRT هنالك اجراءت تحول من char الي int او اي نوع رقمي اخر

( _ /)

(='.'=)

(")-(")

هذا الموضوع مغلق.

مواضيع مشابهة