关于default的位置问题:default放在前面
在linux内核的文件系统中,有这样的一段代码:
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放在前面的更多相关文章
- default(Nullable(type)) vs default(type)
		
default(Nullable<long>) == null default(long?) == null default(long) == 0L
 - switch中的default的位置
		
[转载]http://hi.baidu.com/dannie007zxl/item/5d0c3185577df719c3162724 有的时候,我们对身旁自认为熟悉的东西,却发现很难去给出准确的回答. ...
 - 提高java编程质量 - (五)switch语句break不能忘以及default不同位置的用法
		
先看一段代码: public class Test{ public static void main(String[] args){ System.)); } } public static Stri ...
 - Java之戳中痛点 - (5)switch语句break不能忘以及default不同位置的用法
		
先看一段代码: public class Test{ public static void main(String[] args){ System.)); } } public static Stri ...
 - Invalid default value for prop "value": Props with type Object/Array must use a factory function to return the default value.(props default 数组/对象的默认值应当由一个工厂函数返回)
		
Invalid default value for prop "value": Props with type Object/Array must use a factory fu ...
 - 主机宝(zhujibao) /a/apps/zhujibao/manager/apps/config/config.php no-password Login Vulnerabilities Based On Default cookie Verification From Default File
		
catalog . 漏洞描述 . 漏洞触发条件 . 漏洞影响范围 . 漏洞代码分析 . 防御方法 . 攻防思考 1. 漏洞描述 主机宝管理程序使用了CodeIgniter框架,要想在CodeIgnit ...
 - JAVA CDI 学习(4) - @Alternative/@Default/@Any & Extension
		
前面几节学习到的CDI内容,基本上都是hard-code,以硬编码的方式在代码里指定注入类型,这并非依赖注入的本意,依赖注入的优势之一在于“解耦”,这一节我们将学习如何利用配置来动态注入的类型及属性初 ...
 - CMSEASY /lib/tool/front_class.php、/lib/default/user_act.php arbitrary user password reset vulnerability
		
catalog . 漏洞描述 . 漏洞触发条件 . 漏洞影响范围 . 漏洞代码分析 . 防御方法 . 攻防思考 1. 漏洞描述 攻击者通过构造特殊的HTTP包,可以直接重置任意用户(包括管理员)的密码 ...
 - C++ default 和delete的新用法
		
C++中的默认函数与default和delete用法一. 类中的默认函数a.类中默认的成员函数1.默认构造函数2.默认析构函数3.拷贝构造函数4.拷贝赋值函数5.移动构造函数6.移动拷贝函数 b.类中 ...
 
随机推荐
- (转)iOS项目的目录结构和开发流程
			
网上相关的资源不多,开源的且质量还不错的iOS项目也是少之又少,最近正好跟同事合作了一个iOS项目,来说说自己的一些想法. 目录结构 AppDelegate Models Macro General ...
 - C语言库函数大全及应用实例九
			
原文:C语言库函数大全及应用实例九 [编程资料]C语言库函数大全及应用实例九 函数名: mktemp 功 ...
 - 让Windows 8 / 8.1 以及 Windows Server 2012 / 2012 R2的桌面,显示我的电脑图标
			
cmd -> 运行[rundll32.exe shell32.dll,Control_RunDLL desk.cpl,,0],然后勾上[我的电脑]即可.
 - MongoDB的C#驱动
			
MongoDB的C#驱动基本使用 MongoDB的官方C#驱动可以通过这个链接得到.链接提供了.msi和.zip两种方式获取驱动dll文件. 通过这篇文章来介绍C#驱动的基本数据库连接,增删改查操作. ...
 - Elegant Box主题wpdb::prepare() 报错[已解决]
			
整理书签,发现个网页,是解决Elegant Box主题与新版Wordpress3.5主题不兼容的(3.5改了一个函数的参数个数所致).记得当时使用NeoEase出的主题的时候两次遇到这个问题,费了点功 ...
 - MySQL之 ALTER vs CHANGE vs MODIFY COLUMN
			
1.ALTER COLUMN 用于设置或者移除某一列的默认(缺省)值, 1.1用法 ALTER TABLE MyTable ALTER COLUMN foo SET DEFAULT 'bar'; AL ...
 - 查询在应用程序运行得很慢, 但在SSMS运行得很快的原因探究
			
原文:查询在应用程序运行得很慢, 但在SSMS运行得很快的原因探究 查询在应用程序运行得很慢, 但在SSMS运行得很快的原因探究 -理解性能疑点 1 引言 内容来自http://www.so ...
 - Memcached在.Net中的基本操作
			
Memcached在.Net中的基本操作 一.Memcached ClientLib For .Net 首先,不得不说,许多语言都实现了连接Memcached的客户端,其中以Perl.PHP为主. 仅 ...
 - 缓存,spring
			
applicationcontext.xml xmlns:cache="http://www.springframework.org/schema/cache" xsi:schem ...
 - iOS后向兼容:如何发现过期接口
			
以4.3以下兼容性为例,在项目预编译头文件(xx.pch)中加入如下代码: #import <Availability.h> #define __AVAILABILITY_INTERNAL ...