【发布时间】:2017-12-23 18:21:29
【问题描述】:
谁能解释一下为什么会这样?
class Program
{
static char[] ch = new char[2];
static string name = "Ivankata";
static void Main(string[] args)
{
inputChar();
}
static void inputChar()
{
ch = name.ToCharArray();
Console.WriteLine(ch);
}
}
我的名为 ch 的 char 数组只接受 2 个字符,但是当我将字符串“Ivankata”转换为 char 数组时,它会以某种方式工作吗?它不应该削减剩余的“ankata”并只显示“iv”吗?谁能解释这里发生了什么?
【问题讨论】:
-
您没有为现有数组赋值。您正在用一个新的替换它。
-
@Mahmoud 这不会更改现有数组。它取代了它。改变的是
ch变量引用的内容。 -
我把“以前分配的数组”和“现有的”一样。
-
“字符数组就像一盒巧克力。你永远不知道会得到什么。” - 阿甘正传
-
请阅读How to Ask 并选择tour - 您的 6 个问题有 8 个答案,但没有一个被接受。单击您获得的答案上的复选标记并(稍后)点赞可以帮助其他用户找到好的帖子/答案。