C#语言重温笔记
1,C#的数据结构
sbyte -128~127 [1Byte]
byte 0~255
short -32768~32767 [2Byte]
ushort 0~65535
int -2^31~2^31-1 [4Byte]
uint 0~2^32-1
long -2^63~2^63-1 [8Byte]
ulong 0~2^64-1
Char ---System.Char
一个Unicode字符,存储0~65535之间的整数(2个字节)
[注意:这和C/C++中的char是不一样的]
2,C# 中变量命名
变量名的第一个字符必须是字母、下划线(_)或@。[与C/C++不同]
其后的字符可以是字母、下划线或数字。[不能是 - 短横线]
3,C#中讲解++--运算符
把运算符放在操作数的前面,则操作数是在进行任何其他计算前受到运算符的影响,而把运算符放在操作数的后面,则操作数是在完成表达式的计算后受到运算符的影响。
这有益于另一个示例,考虑下面的代码:
int var1, var2 = 5, var3 = 6;
var1 = var2++ *––var3;
要把什么值赋予var1?在表达式计算前,var3 前面的运算符––会起作用,把它的值从6改为5。可以忽略var2 后面的++运算符,因为它是在计算完成后才发挥作用,所以var1 的结果是5 与5 的乘积,即25。
4,C#中&&与&,||与|
如果&&运算符的第一个操作数是false,就不需要考虑第二个操作数的值了,因为无论第二个操作数的值是什么,其结果都是false。同样,如果第一个操作数是true,|| 运算符就返回true,无需考虑第二个操作数的值。但上面的&和 | 运算符却不是这样。它们的操作数总是要计算的。因为操作数的计算是有条件的,如果使用&&和||运算符来代替&和 | ,性能会有一定的提高。在大量使用这些运算符的应用程序中是比较明显的。作为一个规则,尽可能使用&&和 || 运算符。这些运算符有时用于比较复杂的情形,例如,只有第一个操作数包含某个值时,才计算第二个操作数。
5,C#中的Math.Round(-11.5)=-12, 而JAVA中的Math.Rounde(-11.5)= -11。
看到这,蛋疼了吧。作为两个我感觉语法很接近的语言,一个小小的取整差别截然不同。还有二者的char所占的字节数。
6,C#中的switch case
在C++中,可以在运行完一个case后,运行另外一个case。C#中不可以。
7,C#中
short s =1;
s=s+1;
这是错误的,因为s+1会变成int类型。应为:short s = 1; s+=1;

浙公网安备 33010602011771号