一、什麼是C++ Switch String
C++中的Switch語句通常是根據整型值進行條件匹配,但是從C++11開始,我們可以將字元串作為Switch語句的條件,這就是C++ Switch String。
在Switch String中,我們可以使用字元串常量、字元數組以及C++11中引入的std::string類型作為條件值。
二、C++ Switch String的語法及示例
Switch String的基本語法如下所示:
switch(condition) {
case "value1":
// do something
break;
case "value2":
// do something
break;
default:
// do something
}
其中,condition為字元串類型的變數或者字元串常量。
下面的代碼示例演示了Switch String的使用:
#include <iostream>
#include <string>
using namespace std;
int main()
{
string fruit;
cout <> fruit;
switch(fruit) {
case "apple":
cout << "You selected apple" << endl;
break;
case "banana":
cout << "You selected banana" << endl;
break;
case "orange":
cout << "You selected orange" << endl;
break;
default:
cout << "Sorry, your selection is not available" << endl;
}
return 0;
}
三、C++ Switch String的注意事項
在使用Switch String時,有一些需要注意的地方:
1、值必須是字元串常量、字元數組或std::string類型。
2、如果使用字元數組作為條件值,需要保證數組中的字元不含空字元(\0)。
3、使用Switch String時必須加上default語句,否則會編譯報錯。
4、Switch String對大小寫敏感,如果條件值大小寫不一致,Switch語句將無法匹配成功,所以需要使用一致的大小寫風格。
下面的代碼演示了使用char數組作為條件值的示例:
#include <iostream>
using namespace std;
int main()
{
char color[10];
cout <> color;
switch(color) {
case "red":
cout << "You selected red" << endl;
break;
case "blue":
cout << "You selected blue" << endl;
break;
case "green":
cout << "You selected green" << endl;
break;
default:
cout << "Sorry, your selection is not available" << endl;
}
return 0;
}
四、C++ Switch String的應用場景
Switch String主要用於字元串比較操作,通常用於簡單的條件分支和選項選擇。
下面的代碼演示了使用Switch String進行菜單選擇的示例:
#include <iostream>
using namespace std;
int main()
{
int choice;
cout << "Please select an option:" << endl;
cout << "1. New game" << endl;
cout << "2. Load game" << endl;
cout << "3. Options" << endl;
cout << "4. Quit" <> choice;
switch(choice) {
case 1:
cout << "Start a new game" << endl;
break;
case 2:
cout << "Load an existing game" << endl;
break;
case 3:
cout << "Open options menu" << endl;
break;
case 4:
cout << "Quit the program" << endl;
break;
default:
cout << "Invalid selection" << endl;
}
return 0;
}
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/304305.html
微信掃一掃
支付寶掃一掃