且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

C# 关于类型转换 面试题

更新时间:2022-08-15 14:50:21

分别分析一下两种写法是否正确,如果不正确,请说明原因

写法一:

short s=1;
s = s + 1;

写法二:

short s=1;
s += 1;
解答:

        写法一不正确,会报出下面的错误:

无法将类型“int”隐式转换为“short”。存在一个显式转换(是否缺少强制转换?)	
分析:

        short 关键字表示一种整数数据类型,存在从 short 到 int、long、float、double 或 decimal 的预定义隐式转换。不能将存储大小更大的非文本数值类型隐式转换为 short 类型。

        具体信息可以参考:http://msdn.microsoft.com/zh-cn/library/ybs77ex4.aspx