未填充数组(C++)中的最后一个条目是什么?

sup*_*ame 3 c# arrays

我把C++放在C#中,因为我刚开始使用C#而且我不确定是否存在差异.

如果你声明一个数组

char arr[10] 
Run Code Online (Sandbox Code Playgroud)

并填写arr [0]到arr [8]的值,将在arr [9]中输入什么值?

空间 ' '?结束'\n'?'\ 0'?或者它什么都没有?

我问这个是因为我总是使用这样的战术

char word[20];
for(count = 0 ; count < 20 ; count++)
{
  cout << word[count];
}
Run Code Online (Sandbox Code Playgroud)

打印一个数组的全部内容,我想知道我是否可以通过使用这样的东西来简化它(例如,如果最后一个条目是'\ 0')

char word[20];
while(word[count] != '\0')
{
  cout << word[count];
}
Run Code Online (Sandbox Code Playgroud)

这样,如果没有填满所有空格,我就不必记住在数组中输入了多少条数据.

如果您知道更快的方式,请告诉我.我倾向于在数组上犯一堆错误.

Mar*_*ers 5

构造字符数组的C#语法是:

char[] arr = new char[10];
Run Code Online (Sandbox Code Playgroud)

数组中的所有值都将初始化为'\0'.

也许List<char>对于你不知道你需要多少个字符的情况会更好.另一个需要考虑的选择是StringBuilder.string如果你不需要可变性,也可以使用a .