c#里为什么在unsigned类型的值后面加个u?double也加个d?

来源:百度知道 编辑:UC知道 时间:2024/05/14 15:15:47
比如
uint a = 100u;
double b = 200d;
为什么???

其实,C语言也一样。
默认是int(如果你不写)
如果,C语言里面写
unsigned int a=100;
100是int型,然后自动转化成uint

加u、d等表示赋值类型。标准的写法应该加上u、d,但是不加也不报错,只要类型正确,能够隐式转换。

为了在表达式运行的时候明确指定参与运算的各个字面量的类型。

比如说3/2会等于1是因为3和2都被当成int的。可是如果你手动指定说3/2f这样的话,那么2会被当成float的,所以答案就变成1.5了~~

U代表无符号数,d代表双精度