c++ switch:case的使用方法
时间: 2023-07-16 14:15:14 浏览: 51
`switch` 语句是一种多分支选择结构,其用法如下:
```c++
switch(expression){
case constant-expression1:
// 当 expression 的值等于 constant-expression1 时执行此处语句
break;
case constant-expression2:
// 当 expression 的值等于 constant-expression2 时执行此处语句
break;
// ...
default:
// 当 expression 的值不等于任何一个常量表达式时执行此处语句
break;
}
```
其中 `expression` 是被测试的表达式,可以是任意类型(整型、字符型、枚举型),但必须是一个常量表达式。`case` 后面的常量表达式必须是整型或字符型常量表达式,且必须是唯一的。如果 `expression` 的值等于某个 `case` 后面的常量表达式,就执行该 `case` 后面的语句,直到遇到 `break` 才会跳出 `switch` 语句。如果 `expression` 的值不等于任何一个 `case` 后面的常量表达式,则执行 `default` 后面的语句,如果没有 `default` 分支,则 `switch` 语句不执行任何操作。
相关问题
介绍C++switch函数的使用方法
C++中的switch语句可以根据一个表达式的值来执行不同的语句。其基本语法如下:
```
switch(expression) {
case constant-expression1:
// 执行语句块1
break;
case constant-expression2:
// 执行语句块2
break;
.
.
.
default:
// 执行语句块N
}
```
其中,expression为需要比较的表达式,case后面跟的是常量表达式,用来与表达式expression进行比较。如果表达式expression的值与某个case后面的常量表达式相等,则执行该case后面的语句块。如果没有任何case的常量表达式与表达式expression的值相等,则执行default后面的语句块。
在执行语句块时,可以使用break语句来跳出switch语句,直接执行switch后面的语句。如果没有使用break语句,则会一直执行到遇到break或者switch语句结束为止。
以下是一个简单的示例:
```
#include <iostream>
using namespace std;
int main() {
int num = 2;
switch (num) {
case 1:
cout << "num is 1" << endl;
break;
case 2:
cout << "num is 2" << endl;
break;
case 3:
cout << "num is 3" << endl;
break;
default:
cout << "num is not 1, 2 or 3" << endl;
}
return 0;
}
```
输出结果为:num is 2
switch case使用 qT c++
在Qt C++中,switch case语句可以用于比较整型或枚举类型的值,但无法直接比较QString类型的值。为了在switch case中使用QString类型,可以使用QStringList进行操作。
下面是一个使用QStringList的示例:
```cpp
#include <QCoreApplication>
#include <QString>
#include <QStringList>
#include <iostream>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
QString input;
std::cout << "请输入一个字符串:" << std::endl;
std::cin >> input;
QStringList options;
options << "hello" << "world" << "qt";
switch (options.indexOf(input)) {
case 0:
std::cout << "输入的字符串是hello" << std::endl;
break;
case 1:
std::cout << "输入的字符串是world" << std::endl;
break;
case 2:
std::cout << "输入的字符串是qt" << std::endl;
break;
default:
std::cout << "输入的字符串不在选项中" << std::endl;
break;
}
return a.exec();
}
```
这个示例中,我们首先使用QStringList创建了一个包含三个选项的列表。然后,我们通过options.indexOf(input)来获取输入字符串在列表中的索引。最后,我们使用switch case语句根据索引值进行比较,并输出相应的结果。