gpt4 book ai didi

c++ - 在带有排除 C++ 的 switch 案例中使用范围

转载 作者:行者123 更新时间:2023-11-30 03:18:47 25 4
gpt4 key购买 nike

gcc 中有一个扩展允许在 switch case 语句中使用“range”。

case 'A' ... 'Z':

允许判断字符在 A 到 Z 范围内的任何位置。
是否可以在这样的范围语句中进行“排除”?例如,假设我希望我的案例捕获除“G”和“L”之外的所有字符 A-Z。

我知道一个简单的解决方案是处理 A-Z 大小写正文中的特殊字符,但如果存在上述解决方案我更愿意

最佳答案

char c = /* init */;

switch(c)
{
case 'A' ... ('G'-1):
case ('G'+1) ... ('L'-1):
case ('L'+1) ... 'Z':
/* some code */;
}

但我猜是

a simple solution ... to handle the special characters within the body of the A-Z case

会比上面的代码好得多。

关于c++ - 在带有排除 C++ 的 switch 案例中使用范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54372688/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com