数组' char'中数组的最后一个符号C ++

时间:2017-03-29 14:51:04

标签: c++ arrays char

我有一个类型' char'使用最后一个符号' \ 0'。

#include<iostream>

void main()
{
    char a[4];

    a[0] = 'r';
    a[1] = 'r';
    a[2] = 'r';
    a[3] = '\0';

     for (int i = 0; i < 6; i++)
     {
         cout << a[i];
     }
     cout << endl;
 }

所以,当我尝试输出比这个数组更多的符号时,它会在&#39; \ 0&#39;之后输出随机符号。符号

输出:

rrr ╠╠

我的问题是:在&#39; \ 0&#39;之后如何创建没有符号的数组?符号?

1 个答案:

答案 0 :(得分:0)

首先,此数组的大小为4,因此当您尝试访问任何超出范围的元素时,您会读取随机内存。

其次,&#39; \ 0&#39; character是一个字符串终止符号。您不需要清除它后面的所有元素。在&#39; \ 0&#39;之后,所有标准IO功能都不会写入。 你可以尝试:

cout << a;

没有任何循环。