前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >C/C++黑魔法-另类switch

C/C++黑魔法-另类switch

作者头像
Qt君
发布2019-07-15 16:09:39
4530
发布2019-07-15 16:09:39
举报
文章被收录于专栏:跟Qt君学编程跟Qt君学编程

介绍duff写法与范围判断

duff写法

int n = 1;switch (n) {    case 0: do { printf("%d ", 0);    case 1: printf("%d ", 1);    case 2: printf("%d ", 2);    case 3: printf("%d ", 3);    case 4: printf("%d ", 4);            } while (n-- > 0);}
  • 用于循环优化,提高性能。但现代编译器已经支持得很好了。
  • 输出
1 2 3 4 0 1 2 3 4 

范围判断

int i = 5;switch (i) {    case 0 ... 3:        std::cout<<"0-3: "<<i<<std::endl;        break;    case 4 ... 6:        std::cout<<"4-6: "<<i<<std::endl;        break;    case 7 ... 9:        std::cout<<"7-9: "<<i<<std::endl;        break;    case 10:        std::cout<<"10"<<i<<std::endl;    default:        break;}
  • 注意: gnu编译器,mingw编译器支持
  • 输出
4-6: 5
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-03-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Qt君 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • duff写法
  • 范围判断
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档