如果没有初始化 printString 值为null, 你是不能对null做合并字符串操作的

解决方案 »

  1.   

    如果出现在printString 的是一个结构体 CLR会自动调用的它的构造函数 这也就是为什么int i;不用初始化
      

  2.   

    你要保证哪里都不出错误,string str=String.Empty就OK了
      

  3.   

    因为编译器可以认为你的for循环条件根本不成立,这样printString就没有值了
      

  4.   

    C# 规定变量必须初始化才能使用,否则编译通过不过string str1;
    Console.Write(str1); // errorstring str2 = null;
    Console.Write(str1); // okint n1;
    Console.Write(n1); // errorint n2 = 0;
    Console.Write(n1); // ok
      

  5.   

    sorry,>>>string str1;
    Console.Write(str1); // errorstring str2 = null;
    Console.Write(str2); // okint n1;
    Console.Write(n1); // errorint n2 = 0;
    Console.Write(n2); // ok
      

  6.   

    printString在引用时是需要一个值的 不赋值为NULL怎么+你后面的string??