Странное заполнение char массива. Например: 4' ' вместо '4'
static string to_2(int n)
{
char[] num_in_2 = new char[10000000];
int i = 0;
while (n > 0)
{
num_in_2[i] = (char)(n % 2);
n /= 2;
i++;
}
for(int j=0; j<(int)i/2; j++) //swap
{
char t = num_in_2[i];
num_in_2[i] = num_in_2[i - 1 - j];
num_in_2[i - 1 - j] = t;
}
return new string(num_in_2);
}
Сверху приведена функция перевода числа из десятичной в двоичную СС. Выводить значение функции программа в мейне не хочет. Открыв дебагер, я заметил, что char значение заполняются странно: 1' ' (вместо '1') и 0'\0' вместо '0', а дойдя до передачи значения в вывод, сама IDE (VS 2013) закрывается. Вот такая каша. В чём может крыться проблема?