0

我正在尝试编写一个 switch 语句案例,以文本形式标识从 0 到 9 的所有数字。在 gcc 中,我相信可以使用语句 case '0'...'9':

是否有可以在 Microsoft Visual Studio 中使用的等效表达式,或者我是否必须为每个数字编写一个单独的案例?

4

1 回答 1

1

在 gcc 中,我相信可以使用语句 case '0'...'9'

是的,但这是 GNU C 编译器的扩展,它不是 C++ 标准。

我认为最好的方法是写这样的东西:

switch(c) {
  case '0':
  case '1':
  case '2':
  //...
  case '9':
    //Do something
  break;
}

或者,如果您愿意:

switch(c) {
  case '0': case '1': case '2': /*...*/ case '9':
    //Do something
  break;
}

:(注意和以下之间的空格case

于 2017-08-24T17:48:23.533 回答