nullptr和NULL

在c语言中,NULL既可以是0也可以是(void *)0

但在c++中,这样会给函数重载带来困扰,造成歧义。

于是c++规定,在C++中,NULL只能代表整数0,而(void *)0则有nullptr代表,nullptr只代表空指针,不能表示整数0。其实就是把整数0和(void *)0,分开表示。

在c++中,字符串数组的尾0,也就是‘\0'是什么?这个以ascii码就知道。'\0'代表的是整数0,注意,这里的整数0,可和数字0不同,数字0的ascii码是:48。

猜你喜欢

转载自www.cnblogs.com/litifeng/p/10290436.html