Witam.
Czy jest jakaś funkcja w c+, która robi coś takiego jak w tytule ? Jeśli nie to jak przechowywać "\x" w c++ ?
dzięki za pomoc.
Witam.
Czy jest jakaś funkcja w c+, która robi coś takiego jak w tytule ? Jeśli nie to jak przechowywać "\x" w c++ ?
dzięki za pomoc.
Przechowywać możesz w tablicy charów:
unsigned char shellcode[] = "\xEB\x19\x31\xC0\x5E\x88\x46\x07\xBB\xEF\xBE\xAD\xDE\x50\x56\xFF"
"\xD3\x31\xC0\x50\xBB\xBE\xBA\xFE\xCA\xFF\xD3\xE8\xE2\xFF\xFF\xFF"
"\x63\x6D\x64\x2E\x65\x78\x65" ;
Ale fajnie będzie, jak napiszesz, co dokładnie chcesz osiągnąć.
Trochę się pomyliłem. Mam jednak
char * input = "0102030405";
i chciałbym to skonwertować tak, żeby tam było "\x1\x2\x3\x4\x5".
Mam nadzieje, że teraz jaśniej, sory za dezinformacje.
char * input = "0102030405";
To nie jest poprawny kod C++ i nie powinien się kompilować.
Jeśli chodzi o samą zamianę, polecam std::regex
.
string s = "0102030405";
regex zero{"(0)"};
DBG((regex_replace(s, zero, string{R"(\x)"})));
gdyby było const char * input = "0102030405" było by poprawnie ;)