ps1='\0';这个表示与ps1=0;结果一样但含义不一样,对吗?那个ps1前面有星号*被隐藏了
'\0'表示ASCII的值为0,赋值0也是一样。
*号被隐藏了,有点看不清楚。应该是一样的。'\0'就是0
‘\0'是 字符编码为0,就等于0
两者虽然等价但‘\0'是属于字符,0属于数值含义不一样
如有帮助,望采纳!谢谢!
*ps1 = '\0'这个的意思是把ps1指向的内存数值赋值为'\0',等价于 *ps1 = 0;因为'\0'的ASCII码就是0
ps1=0(ps1前面没有星号)这句话的意思是,把ps1设为一个空指针,ps1的值就是0x0,
ps1=0 (ps1前面没有星号)和*ps1 = '\0'是不一样的,*ps1 = '\0'的时候ps1的值不一定是0x0(一般不是0x0)
对的,在C/C++,P=NULL和P=0是一样的。都是将此指针初始化为空指针。
而P='\0'则理论上说是不合法的,因为'\0' 是一个字符,而P则是一个指针。