首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >C using case(condition):代替case值:

C using case(condition):代替case值:
EN

Stack Overflow用户
提问于 2015-03-13 08:43:55
回答 5查看 15.4K关注 0票数 1

我正在尝试简化一段很长的代码,我想知道是否可以在case语句后使用条件而不是值作为var。

即,

代码语言:javascript
复制
switch(var) {
    case(var>1): printf("Var greater than 1");
    case(var<1): printf("Var less than 1");
}

这个是可能的吗?如果不是,有没有其他有相同想法的替代方案呢?

EN

回答 5

Stack Overflow用户

发布于 2015-03-13 08:45:19

不是的。这是不可能的。使用ifelse if

代码语言:javascript
复制
if (var > 1) { 
    printf("Var greater than 1");
} else if (var < 1) {
    printf("Var less than 1");
}
票数 7
EN

Stack Overflow用户

发布于 2019-06-15 00:46:46

switch是一个条件语句,用于在每种情况下匹配值。你在找什么是不可能的。您必须使用If else语句来执行此操作。

票数 0
EN

Stack Overflow用户

发布于 2020-03-04 21:42:26

从C# 7开始,SWITCH语句变得更加强大;尝试执行以下操作:

代码语言:javascript
复制
SWITCH (myVariable){
   CASE var myVal WHEN myVal < 1 :
     ... my code ...
   break;

   CASE var myVal WHEN myVal > 1 :
   ... some other code ...
   break;
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29022954

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档