问题1:
            int a;
            Console.WriteLine(a);int 类型的默认值是0,为什么这样写不可以?
问题2:Console.WriteLine("gand total:\t{0,8:c}", billtotal + tip);    {0,8:c}", 是什么意思?
3、问题:if (Temp == string.Empty)是判断不能为空吗?
if (temp == "")这样写写也可以

解决方案 »

  1.   

    1.a没有初始化
    2.是对输出值进行排版的,意思为居中对齐后偏移8单位
    3.string.Empty在一般情况下与“”可以互相转换;差别为string.Empty 不分配存储空间,而"" 分配一个长度为空的存储空间个人理解,希望有所帮助
      

  2.   

    问题2:{0,8:c}显示billtotal + tip的值,宽度为8字符,c就表示是货币型
      

  3.   

    1 这个是c#语言比较严格,未初始化的不能用,在vb.net里是可以的
          Dim a As Integer
         Console.WriteLine(a)
    2 后面第一个参数用货币符号表示,左边留空,共占8个位置
    3 基本一样,string.empty的定义就是 ="",不过empty是个共享变量,代码里就只有一份,""相当于每个地方都new了一个空字符串,但是相同的字符串又会有字符串驻留的概念,所以还比较复杂,你就当一样吧