Mytextbox.Text ="";
            mypassword.Password ="";
 mylistbox.SelectedItem =null;null与空字符串的区别到底是什么,我原本以为是一样的,但是将上面的空字符串("")换成null后就出现错误,请各位给小弟点详解,最好是常用时候的注意事项

解决方案 »

  1.   

    不一样
    “”是会分配空字符串长度的内存
    null不分配内存
      

  2.   

    null!=""
    null表示未指向任何对象
    而"",表示一个没有内容的字符串
      

  3.   

    LZ,
    1.NULL是空地址的意思,在使用指针变量时表示一个空地址,NULL的值在“stdio.h”头文件中被定义为一个值为0的符号常量;即 
    #define NULL 0 NULL的值为0 
    2.0可以表示数字0,也可以表示ASCII码值为0的字符 
    3.""表示字符串的长度为0的字符串。
      

  4.   


    说白点就是:这里""和NULL绝对是两个概念 
     ""代表一个字符串存在,它的值就是“” 
     NULL代表字符串根本没有实际的值,你并不知道它是什么
    而且,null可以赋值给任何对象.""就不行了.
     
      

  5.   

    绝非内存占用多少的差别。内存占用多少,在这里有多大意义?null表示没有引用任何对象,而空字符串表示的是一个实际一致的对象。这就好像用一个int?表示人的年龄,其值为null表示“不知道、不确定、不关心”,跟值为0完全不同的意思。使用0作为其值是有歧义的。
      

  6.   


    NULL代表声明了一个空对象,根本就不是一个字符串。 
     ""代表声明了一个对象实例,这个对象实例的值是一个长度为0的空字符串。
      
     NULL代表声明了一个空对象,对空对象做任何操作都不行的,除了=和== 
     ""是一个字符串了,只是这个字符串里面没有内容了
     
      

  7.   

    听别人说:
    String类中有个pData“指针”。
    为【null】时,其值为0.即空指针)
    为【“”】时,其值为'\0',即文本结束符。
      

  8.   

    无语,建议去看看
    http://topic.csdn.net/u/20100723/16/13f31adc-f783-492c-b77d-95c887b3db8b.html?82178
      

  9.   

    一个看不见摸不到 (Null) 
    一个看不见摸得到 ("")
      

  10.   

    null不等于任何值,anything == null//永远返回false
    ""是一个特定的值,和"hello"没什么区别的
      

  11.   

    NULL的意思是不知道指向哪里。声明一个变量值为null,说明其是引用变量,指针不知道指向内存的哪个地址,还没有指向任何地址,只是声明但未引用。
    而一个变量值为空的话,意思是已经声明并引用,但是其值为空。
      

  12.   

    NULL 和 ""完全是两个概念。
    NULL是空指针。""==string.empty