“零”

来源:互联网 发布:抓屏软件 绿色 编辑:程序博客网 时间:2024/04/28 08:12

在C中,我们会遇见这几种情况'\0','0',0,NULL,NUL

正确的区分它们才不会让我们犯一些小错误。

'\0'是C++中字符串的结尾标志,存储在字符串的结尾。比如char cha[5]表示可以放4个字符的数组,由于c/c++中规定字符串的结尾标志为'\0',它虽然不计入串长,但要占内存空间

#include<stdio.h>

int main()

{

char arr1[] = {'h','e','l','l','o'};

char arr2[] = "hello";

printf("%s\n",arr1);

printf("%s\n",arr2);

return 0;

}

在上面的程序中arr1有五个元素,没有‘\0’;arr2中有六个元素,而且有‘\0’;所以两个输出语句中第一个输出的是hello和一堆乱码,因为编译器想找到‘\0’,结束程序,所以会有一堆乱码;而第二个输出的是hello.

‘0’这是一个字符零,他的ASCII码是48;假如要写一个程序,要求他可以实现字符3到数字3的转换;

#include<stdio.h>
int main()
{
char a = '3';
char b = '0';
printf("3--%d",(a-b));
return 0;

}

这样就可以实现了,所以一定要区分数字”零“和字符”零“.

NULL:在ASCII码的第一个字符是NULL,它的数值是0,占用1字节;C语言把它作为字符串的最后一个字符,以表示字符串到此结束."\0";NULL还可以初始化指针,在后续的学习中再继续完善这篇博客。

NUL在书上是这样的,其实并不存在NUL这个”零“,只要把这些记住其实我觉得就好了.

回头看一看其实C中的乐趣还有很多。






0 0