C产品在市场上有哪些独特优势?
- 内容介绍
- 文章标签
- 相关推荐
本文共计437个文字,预计阅读时间需要2分钟。
发现问题时,人们可能会想进行修改。例如,代码片段:cbyte a=1;byte b=2;byte c=a + b;这段代码在编译时会出现问题,因为编译器不支持`+`运算符在`byte`类型之间的直接使用。可以通过使用`int`类型来避免编译错误:cint a=1;int b=2;byte c=(byte)(a + b);
发现问题
有人会想相加?还不简单,用 + 呀。
byte a = 1; byte b = 2; byte c = a + b;
以上代码是通不过编译的,因为编译器对待 + 时,有 int 相加、有 decimal 相加、有字符串相加……就是没有 byte 相加,所以它会用最接近的 int 相加,自然返回的结果也是 int,而 int 类型是不能直接赋值给更小的 byte 类型的。
解决方法
所以,得改成这样:
byte a = 1; byte b = 2; byte c = (byte)(a + b);
还好 += 不存在这个问题,a += b 是没问题的。
byte 最大值
byte 最小值是 0,最大值是 255,所以 byte a = 256 是通不过编译的。
本文共计437个文字,预计阅读时间需要2分钟。
发现问题时,人们可能会想进行修改。例如,代码片段:cbyte a=1;byte b=2;byte c=a + b;这段代码在编译时会出现问题,因为编译器不支持`+`运算符在`byte`类型之间的直接使用。可以通过使用`int`类型来避免编译错误:cint a=1;int b=2;byte c=(byte)(a + b);
发现问题
有人会想相加?还不简单,用 + 呀。
byte a = 1; byte b = 2; byte c = a + b;
以上代码是通不过编译的,因为编译器对待 + 时,有 int 相加、有 decimal 相加、有字符串相加……就是没有 byte 相加,所以它会用最接近的 int 相加,自然返回的结果也是 int,而 int 类型是不能直接赋值给更小的 byte 类型的。
解决方法
所以,得改成这样:
byte a = 1; byte b = 2; byte c = (byte)(a + b);
还好 += 不存在这个问题,a += b 是没问题的。
byte 最大值
byte 最小值是 0,最大值是 255,所以 byte a = 256 是通不过编译的。

