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

Перевод числа из hex в dec - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Запрет запуска второй копии приложений http://www.cyberforum.ru/cpp-beginners/thread1778654.html
Нужно запретить запуск второй копии чужого приложения. Т.е. пользователь ткнул 5 раз на ярлык GTA5 в результате в процессе висит 2 GTA5, что не есть хорошо. Как этого можно избежать? Пока что идея такова. Мое приложение висит в памяти. Ярылк переделывается на что-то вроде "C:\myprogramm\app.exe" -name "GTA5" -launcher "C:\Games\GTA5\GTAVplay.exe" -path "C:\Games\GTA5\GTAV.exe" Параметры...
C++ Final для вложенной структуры class A{ class B {..} final; }; так класс B теперь входит в размер A, но не инициализируется. это баг? потому что я нигде не нашел про такое использование http://www.cyberforum.ru/cpp-beginners/thread1778648.html
C++ Stack. определение шаблона функции testStack. (хочу разобраться в коде)
Вот эта программа. Хочу разобраться в коде. #include <iostream> #include <string> #include <Stack> using namespace std; template <typename T> void testStack( Stack< T > &theStack,// показывает ошибку на Stack с требованием точки с запятой! поясните что и как.
C++ Ошибка компилятора C2784
Код: #include <iostream> #include <conio.h> using namespace std; int main(void) { cout >> "Hello, world" >> endl;
C++ Сложение чисел типа long long http://www.cyberforum.ru/cpp-beginners/thread1778607.html
Пыталась сложить 2 больших числа (в пределах long long), не получилось. В чем дело? #include <cmath> #include <cstdio> #include <vector> #include <iostream> #include <algorithm> using namespace std; int sum(int n, vector<long long> arr) {
C++ Передвижение коня по доске и сбор букв Добрый день! Не могу разобраться, в чём проблема =( Нужно решить задачу: есть шахматная доска. На ней, в каждой клетке, расположены буквы. По доске "ходит" конь (буквой "г", соответственно), и "собирает" фигуры. Нужно собрать таким образом 6 букв (первая "Э" уже задана). К сожалению, кроме всякой ерунды, ничего не выдаёт =( Буду рад помощи. #include <iostream> #include <conio.h> подробнее

Показать сообщение отдельно
IGPIGP
Комп_Оратор)
Эксперт по математике/физике
6422 / 3061 / 303
Регистрация: 04.12.2011
Сообщений: 8,344
Записей в блоге: 3
12.07.2016, 21:26     Перевод числа из hex в dec
Ferrari F1, в такую жару голова не варит. Поэтому пишу тем местом откуда выпадает такой код:
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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#include <iostream>
#include <string> 
using namespace std;
 
int decimal_from_hex_char(char hex)
{
char ret;
if(hex>'0'-1 && hex < '9'+1) ret = hex-'0';
if((hex>'A'-1 && hex < 'F'+1)) ret = 10 + hex - 'A';
if((hex>'a'-1 && hex < 'f'+1)) ret = 10 + hex - 'a';
return ret;
}
string reverse_str(string &str)//г...кодить так уж отдуши))
{
string rev("");
int len=str.size();
for(int i = len-1; i>-1; --i)
{
    rev+=str[i];
}
return rev;
}
 
char char_from_dec(int a){return '0'+a;}
 
string convert_hex_to_decimal(string & hex_str)
{
    string dec_str("");
    int len=hex_str.size(), overlap=0, current;
for(int i = len-1; i>-1; --i)
{
current=overlap+decimal_from_hex_char(hex_str[i]);
overlap=current/10;
dec_str+=char_from_dec(current%10);
}
if(overlap>0)
{
current=overlap;
overlap=current/10;
dec_str+=char_from_dec(current%10);
}
if(overlap>0)dec_str+=char_from_dec(overlap);
return reverse_str(dec_str);
}
 
void main()
{
    char hexes[]={'1', '2', 'A', 'C', 'c', 'f'}; 
for(int i=0; i<6; ++i)cout<< hexes[i]<<" ";
cout<<endl;
for(int i=0; i<6; ++i)cout<< decimal_from_hex_char(hexes[i])<<" ";
cout<<endl;
string hex_str="1AFF";
cout<<hex_str<<endl;
string dec_str=convert_hex_to_decimal(hex_str);//2165
 
cout<<dec_str<<endl;
system("pause");    
}
Если ошибок нет, то этого не может быть.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru