C/C++_中NULL与空字符串的区别

  今天在工作中遇到一个问题,回调函数传参调不起来,NULL和空字符串是不相同的。

总结如下:

  空字符串是 "",会创建一个对象,内容是"",有内存空间;

  而NULL,不会创建对象,没有内存空间;

举个比喻:

  ""   相当于我的钱包里没有钱;

  NULL 相当于我没有钱包;

举例说明:

  int _tmain(int argc, _TCHAR* argv[])
  {
     char a[100] = { 0 };
     strcpy(a, NULL);

    return0;

  }

  这种情况下,程序会出现崩溃;

  strcpy(a, ""); //需要传入空字符串

转载来自:http://blog.csdn.net/u010003835/article/details/48054041

posted @ 2017-01-18 18:45  生活需要慢慢  阅读(5358)  评论(0编辑  收藏