问题描述
我是C编程语言的新手,并且最近几天一直在学习它。我对终止字符如何工作以及为什么需要它感到困惑。当我看网上的一些文档时,它们通常会指出我们初始化char数组时的最后一个字符必须为'\ 0'。但是,当我不将其插入char数组的末尾时,它似乎也可以编译并且运行良好。例如:
char test[4] = "test";
printf("%s\n",test );
printf("%lu\n",strlen(test) );
它会编译,正确打印出值,并strlen返回正确的值,这意味着编译器知道char数组中的最后一个字符在哪里。那么为什么我们必须在末尾添加“ \ 0”。这只是惯例吗?还是还有其他东西?
谢谢。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)