c# - 未填充数组 (C++) 中的最后一项是什么?

标签 c# arrays

我放 C++ 是因为我刚开始使用 C#,我不确定是否有区别。

如果声明一个数组

char arr[10] 

并填入arr[0]到arr[8]的值,arr[9]的值是多少?

一个空格 ' '?结束符'\n'? '\0'?还是什么都没有?

我问这个是因为我一直使用这样的策略

char word[20];
for(count = 0 ; count < 20 ; count++)
{
  cout << word[count];
}

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

char word[20];
while(word[count] != '\0')
{
  cout << word[count];
}

这样,如果所有的空间都没有被填满,我就不必记住有多少条数据进入了一个数组。

如果您知道更快的方法,请告诉我。我倾向于在数组上犯很多错误。

最佳答案

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

char[] arr = new char[10];

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

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

关于c# - 未填充数组 (C++) 中的最后一项是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2953898/

相关文章:

c# - NHibernate 中多列的 IN 子句映射

javascript - 如何将窗口滚动与充满偏移顶部的数组进行比较?

arrays - 对 Swift 数组声明感到困惑

javascript - 构建 n 进制数字数组的通用公式

调用 delete[] 后仍可访问 C++ 指针数组

c# - 如何向 Visual Studio C++ ATL 项目创建的 COM .dll 添加新函数

c# - 如何从 XmlDocument 中删除空格

c# - 将嵌套的 XML 元素反序列化为 C# 中的类

c# - SqlCommand 对象,CommandTimeout 的时间长度是多少?

java - 如果使用直接哈希函数存储节点,主存储区域数组中将有多少个元素