Char数组返回不正确的值

时间:2013-10-10 19:59:26

标签: c# arrays

我有一个char数组chars[],其中包含值{'#', '$', '1'}。我想删除1并将其放入另一个变量val,但是当我这样做时,它会给我49(idk为什么)。我尝试调试它,信息显示chars的元素如下:

char[0] = 35 '#'
char[1] = 36 '$'
char[2] = 49 '1'

反过来又

int val = char[2];

成为

val = 49

我不确定为什么会这样,但它正在抛弃我的计划。有谁知道问题是什么以及我可以做些什么来解决它?

4 个答案:

答案 0 :(得分:2)

你应该使用 char val = char[2];

使用int,您将char的ASCII表示形式视为整数。 另见http://hu.wikipedia.org/wiki/ASCII

答案 1 :(得分:1)

49是char'1'

的ASCII表示

link到ASCII表

答案 2 :(得分:1)

这是角色的数值。 char只是一个8位数字。

答案 3 :(得分:0)

只需去:charArray[x].ToString();

这会将ASCII表示形式转换为实际字符。