C语言学习笔记(1)
前言
本文记录在学习过程中,遇到的关于‘\0’的一些问题。
一、\0是什么?
\0是C语言中用于标识字符数组结尾的特殊字符,\0在字符数组中和普通字符一样会占据一个字符的存储空间。
int main(){
char str[] = "hello";
int len = sizeof(str); //结果为6
}
\0在ASCII码表中的信息如下:
二、与NULL、‘0’、0的区别
1.与NULL的区别
在C语言中,NULL一般指空指针,表示不指向任何东西。其定义如下:
#undef NULL
#if defined(__cplusplus)
#define NULL 0
#else
#define NULL ((void *)0)
#endif
可以看到,NULL底层就是整型0,底层表示为00000000。所以可以说,NUL