Форум программистов, компьютерный форум CyberForum.ru

Перевод из 10-й с.ч. в 16-ую. Результат - в char[m] - C++

Восстановить пароль Регистрация
 
Mr_malysh
0 / 0 / 0
Регистрация: 03.04.2012
Сообщений: 24
26.05.2013, 23:15     Перевод из 10-й с.ч. в 16-ую. Результат - в char[m] #1
нужно перевести из 10-ой с.ч. в 16-ую.
Результат записать как массив.

Написал это, но постоянная ошибка "нарушение прав доступа при записи по адресу" :

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
void DecToHex(long int a){
    int i=0;
    char B[20];
 do{ 
     if(a%16==0)B[i]='0';
     else if (a%16==1)B[i]='1';
     else if (a%16==2)B[i]='2';
     else if (a%16==3)B[i]='3';
     else if (a%16==4)B[i]='4';
     else if (a%16==5)B[i]='5';
     else if (a%16==6)B[i]='6';
     else if (a%16==7)B[i]='7';
     else if (a%16==8)B[i]='8';
     else if (a%16==9)B[i]='9';
     else if (a%16==10)B[i]='A';
     else if (a%16==11)B[i]='B';
     else if (a%16==12)B[i]='C';
     else if (a%16==13)B[i]='D';
     else if (a%16==14)B[i]='E';
     else if (a%16==15)B[i]='F';
     i++;
}while(a>16);
 cout<<B;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.05.2013, 23:15     Перевод из 10-й с.ч. в 16-ую. Результат - в char[m]
Посмотрите здесь:

перевод из char в int C++
перевод из string^ в char C++
C++ перевод строки CHAR
C++ перевод hex в char
C++ Неправильный результат char
Перевод из char в int C++
C++ Перевод *char в int[] c++
C++ Перевод char в int

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
dr.curse
 Аватар для dr.curse
386 / 342 / 16
Регистрация: 11.10.2010
Сообщений: 1,907
26.05.2013, 23:17     Перевод из 10-й с.ч. в 16-ую. Результат - в char[m] #2
Mr_malysh, может добавить?
C
1
a/=16;
Mr_malysh
0 / 0 / 0
Регистрация: 03.04.2012
Сообщений: 24
26.05.2013, 23:26  [ТС]     Перевод из 10-й с.ч. в 16-ую. Результат - в char[m] #3
спасибо.
Но теперь какую-то непонятную штуку выбрасывает, как результат

Например, ввожу 1010
А выводит 2F|непонятные символи и смайл в конце
Yandex
Объявления
26.05.2013, 23:26     Перевод из 10-й с.ч. в 16-ую. Результат - в char[m]
Ответ Создать тему
Опции темы

Текущее время: 14:23. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru