gpt4 book ai didi

c - 开关盒自动断电

转载 作者:行者123 更新时间:2023-11-30 17:12:45 26 4
gpt4 key购买 nike

是否有任何带有扩展的 C 编译器能够在每个 case 语句末尾自动中断(类似于 Swift 提供的功能)或在未来的 C 规范中提供备用开关?

对此最感兴趣,以避免在广泛的 switch-case 场景中出现困惑。

我发现这工作“不错”,但更喜欢更清晰的行为。

#define case   break; { } case
#define switch_break switch

switch_break (action)
{
default: printf ("Unknown action");

case action_none : // Nothing
case action_copy : doCopy ();
case action_paste : doPaste ();
case action_none : break; /* C requires a statement after final case */

}

最佳答案

如果您讨厌每次都编写 break,请将 switch 语句包装在函数内。然后可以将 break 替换为 return 语句。例如

int switch_func(char c) {
switch(c) {
case 'a': return 1;
case 'b': return 3;
case 'c': return 5;
case 'd': return 7;
. . .
default: return 0;
}
}

仅当存在返回值时才减少代码。

关于c - 开关盒自动断电,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31309921/

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