关于default的位置问题:default放在前面
2013-07-17 21:10
176 查看
在linux内核的文件系统中,有这样的一段代码:
default的位置放在了前面,这样会导致默认先进入default分支从而影响到程序的逻辑吗?
答案:在程序中default的位置可以任意,因为编译到exe后,程序执行时先判断所有case,然后再判断是否跳到default的地址(即指针),然后往后执行,遇到break之类的就直接跳到后面去了。(而各case和default的内嵌语句又是顺序的)
本文来源:谁不小心的csdn博客:关于default的位置问题:default放在前面
473 if (this.name[0] == '.') switch (this.len) { 474 default: 475 break; 476 case 2: 477 if (this.name[1] != '.') 478 break; 479 follow_dotdot(nd); 480 inode = nd->dentry->d_inode; 481 /* fallthrough */ 482 case 1: 483 continue; 484 }
default的位置放在了前面,这样会导致默认先进入default分支从而影响到程序的逻辑吗?
答案:在程序中default的位置可以任意,因为编译到exe后,程序执行时先判断所有case,然后再判断是否跳到default的地址(即指针),然后往后执行,遇到break之类的就直接跳到后面去了。(而各case和default的内嵌语句又是顺序的)
本文来源:谁不小心的csdn博客:关于default的位置问题:default放在前面
相关文章推荐
- 关于default的位置问题:default放在前面
- 关于bootstrap中Affix放在顶部导航栏,出现位置偏移的问题
- 关于SpringBoot bean无法注入的问题(与文件包位置有关)改变自动扫描的包
- struts2+spring4.0+hibernate4三大框架的结合,关于struts.xml的存放位置问题
- 关于SpringBoot bean无法注入的问题(与文件包位置有关)改变自动扫描的包
- 关于CCTableView中reloadData()操作,删除第一个/最后一个cell后tableview位置未刷新的问题
- 关于SpringBoot bean无法注入的问题(与文件包位置有关)改变自动扫描的包
- 关于“在C语言中只能在函数前面定义变量”的问题
- 针对书《Linux高级编程》关于常量数据存储位置的问题
- 关于Canvas.drawText中xy位置问题
- 关于@synthesis、变量、属性、属性名前面下划线的问题
- 关于最外层为相对布局时,通过动态设置布局内控件位置问题
- 关于FragmentLayout布局的位置问题
- 关于键盘出现与隐藏时调整UITextField的显示位置问题
- 关于SpringBoot bean无法注入的问题(与文件包位置有关)改变自动扫描的包
- Cocos2d-x学习之---关于CCTableView中reloadData()操作,删除第一个/最后一个cell后tableview位置未刷新的问题
- 关于Gridview自动生成列后,手动设定的模板列位置问题解决方案
- 关于springmvc配置文件放在非默认位置
- 关于Android资源图片存放位置的问题
- delphi中关于ShellExecute打开文件所在的位置(处理文件名中有逗号,单引号问题)