iCeSnaker - Program rhapsody

谱写程序的狂想曲

导航

C#问题积累(日积月累)

Posted on 2004-07-31 00:01  iCeSnaker  阅读(941)  评论(0编辑  收藏  举报
记录一些小结和细节问题(看过的回答过的)

Q:字符串“supercalifragilisticexpialidocious”是因为太长了而不能放在string变量中吗?为什么?
A:string字符数是没有上限的,因为它可以使用可变大小的内存。

Q: &和&&的区别?
A: &和&&同样都是二元运算符,&的运算结果和&&是一样的,但得到结果的方式有一个重要的区别:&&其性能比较好,例如,var1=var2&&var3和var1=var2&var3同样都是检查第一个操作数的值,然后再根据该操作数的值进行操作,如果第一个操作数为true,&&就不用检查第二个操作数,也就是var3了,这就提高了运算效率的提高;“|”和“||”也差不多一个意思。

Q:强制类型转换
A: (destinationType)sourceVar ,把sourceVar的值转换为destinationType,例如:shortVal*(short)floatVal

Q:转义序列
A:变量的命名是有限制的,不能使用任意的字符序列;
   
  myString=“\“myInteger\“is“;

在这里如果不使用转义序列 \” 就会出现错误。

Q:C# 编译器和 C++ 编译器输出之间的差异
A:作为调用 C# 编译器的结果,没有创建任何对象 (.obj) 文件;直接创建输出文件。因此,C# 编译器不需要
    链接器。