❥关于C++之C风格字符串
Posted itzyjr
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了❥关于C++之C风格字符串相关的知识,希望对你有一定的参考价值。
char cat[4] = 'c', 'a', 't', '\\0';
cout << cat;// 打印:cat
char dog[3] = ['d', 'o', 'g';
cout << dog;// 打印:dog€??
由打印结果可知:c-string末尾是以’\\0’结尾的,否则不是c-string!
#include<cstring>// 使用strlen函数
...
char fish[] = "Bubbles";// 让编译器计算长度。末尾是有\\0的!
cout << strlen(fish);// 打印:6(strlen以\\0为结束标志,不计入)
<cstring>
库对应C的string.h
,strlen函数原型为:size_t strlen(const char* str);
对于数组,数组名即为数组首地址指针,故参数是指针类型OK。
char ch[3];
if (ch[0] == '\\0' && ch[1] == '\\0' && ch[2] == '\\0')
cout << "Initial All NULL";
打印:Initial All NULL,说明字符数组初始化时,全部为’\\0’。
通过cin键盘输入,将字符串读入到char数组时,将自动加上结尾的空字符。
关于字符串末尾的’\\0’,有一种情况要注意:拼接字符串常量。
cout << "I'd give my right ar"
"m to be a great violinist.\\n";
在以上情况下,第一个字符串末尾的’\\0’将被第二个字符串的第一个字符取代,从而完成字符串的拼接。
以上是关于❥关于C++之C风格字符串的主要内容,如果未能解决你的问题,请参考以下文章