int в формат hex

Статус
В этой теме нельзя размещать новые ответы.

ччбчлчлчъ ччччшчьпьппзвжв

Потрачен
Автор темы
557
271
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Как придать инту формат hex, т.е. есть 5500 число и нужно сделать чтобы оно имело вид 0x5500
1652639471960.png
 

sc6ut

неизвестный
Модератор
382
1,075
тебе его вывести надо или что? просто непонятно что ты хочешь. что значит "придать вид"?
если преобразовать его в строку формата 0x... то можно так:
на си
C:
#include <stdio.h>

// ...

int num = 0x5500;
char buf[100] = { 0 };
sprintf(buf, "0x%X", num);
на сиплюсплюс
C++:
#include <sstream>

// ...

int num = 0x5500;
std::ostringstream oss;
oss << "0x" << std::uppercase << std::hex << num;
std::string buf = oss.str();
 
Последнее редактирование:

ччбчлчлчъ ччччшчьпьппзвжв

Потрачен
Автор темы
557
271
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
тебе его вывести надо или что? просто непонятно что ты хочешь. что значит "придать вид"?
если преобразовать его в строку формата 0x... то можно так:
на си
C++:
#include <stdio.h>

// ...

int num = 0x5500;
char buf[100] = { 0 };
sprintf(buf, "0x%X", num);
на сиплюсплюс
C++:
#include <sstream>

// ...

int num = 0x5500;
std::ostringstream oss;
oss << "0x" << std::uppercase << std::hex << num;
std::string buf = oss.str();
я токо учусь и сложно объяснить, что нужно, у меня такая тема, длл определяет название свое и с помощью регулярки получается значение
1652640964988.png
5500, затем это значение нужно сюда, чтобы такой вид имело
1652641000682.png
, либо же мне можно 5500 представить в виде хекс и перевести его, но это у меня не получается на этапе составления строки =((
1652641066672.png

Весь проект
C++:
#include <windows.h>
#include <string>
#include <regex>
BOOL APIENTRY DllMain(HMODULE hModule, DWORD dwReasonForCall, LPVOID) {
    HANDLE process = GetCurrentProcess();

    DWORD_PTR processAffinityMask;
    DWORD_PTR systemAffinityMask;
    if (!GetProcessAffinityMask(process, &processAffinityMask, &systemAffinityMask))
        return -1;
    if (dwReasonForCall == DLL_PROCESS_ATTACH) {
        
        char name[256];
        GetModuleFileNameA(hModule, name, 256);
        std::regex re(R"(.*\\.*-(\d+).+)", std::regex::icase);
        std::cmatch m;
        std::regex_match(name, m, re);
        
        std::string s = "0x"+stoi(m[1]);

        SetProcessAffinityMask(process, std::stoul(s, nullptr, 16));

    }
    else if (dwReasonForCall == DLL_PROCESS_DETACH) {
        SetProcessAffinityMask(process, systemAffinityMask);
    }
    return TRUE;
}
 
Статус
В этой теме нельзя размещать новые ответы.