HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #5091  
Старый 19.02.2021, 05:31
checkdasound
Постоянный
Регистрация: 12.01.2018
Сообщений: 963
С нами: 4387250

Репутация: 133


По умолчанию

Цитата:
Сообщение от FomikuS  

Как перевести цвет игрока в хекс?

Lua:





Код:
--Lua
color
=
(
"%06X"
)
:
format
(
bit
.
band
(
sampGetPlayerColor
(
id
)
,
0xFFFFFF
)
)

если тебе нужно цвет игрока цифрами перевести в 0x..., то это dec to hex.

C++:





Код:
std
::
string
DecimalToHeximal
(
int
dec
)
{
char
hex
[
20
]
;
_itoa
(
dec
,
hex
,
16
)
;
return
hex
;
}
 
Ответить с цитированием

  #5092  
Старый 19.02.2021, 09:37
kin4stat
Флудер
Регистрация: 06.11.2017
Сообщений: 2,759
С нами: 4483143

Репутация: 183


По умолчанию

Цитата:
Сообщение от checkdasound  

если тебе нужно цвет игрока цифрами перевести в 0x..., то это dec to hex.

C++:





Код:
std
::
string
DecimalToHeximal
(
int
dec
)
{
char
hex
[
20
]
;
_itoa
(
dec
,
hex
,
16
)
;
return
hex
;
}

Застрелись.

C++:





[CODE]
std
::
string
IntToHexString
(
unsigned
int
digit
)
{
std
::
stringstream Hex
;
Hex



Либо на C++20:

C++:





Код:
inline
std
::
string
IntToHexString
(
unsigned
int
digit
)
{
return
std
::
format
(
"{:08X}"
,
digit
)
;
}
 
Ответить с цитированием

  #5093  
Старый 19.02.2021, 12:12
SR_team
Флудер
Регистрация: 26.10.2013
Сообщений: 4,924
С нами: 6603505

Репутация: 183


По умолчанию

Цитата:
Сообщение от KiN4StAt  

Застрелись.
Так то его метод быстрее стрима.

А самый быстрый вариант с to_chars/from_chsrs https://en.cppreference.com/w/cpp/utility/to_chars
 
Ответить с цитированием

  #5094  
Старый 19.02.2021, 12:51
kin4stat
Флудер
Регистрация: 06.11.2017
Сообщений: 2,759
С нами: 4483143

Репутация: 183


По умолчанию

Цитата:
Сообщение от SR_team  

Так то его метод быстрее стрима.

А самый быстрый вариант с to_chars/from_chsrs https://en.cppreference.com/w/cpp/utility/to_chars
Быстрее, но _itoa это платформозависимая функция, так еще из Си, а также она не может добавить незначащих нулей в начало

to_chars не умеет в добавление нулей в начало и конвертация в hex, а также не особо неудобен в использовании

UPD: to_chars имеет fmt, в котором можно обозначить hex, но все также не умеет в добавление незначащих нулей
 
Ответить с цитированием

  #5095  
Старый 19.02.2021, 13:15
Vintik
Познавший АНТИЧАТ
Регистрация: 18.08.2017
Сообщений: 1,568
С нами: 4598023

Репутация: 183


По умолчанию

Цитата:
Сообщение от KiN4StAt  

Быстрее, но _itoa это платформозависимая функция, так еще из Си, а также она не может добавить незначащих нулей в начало
to_chars не умеет в добавление нулей в начало и конвертация в hex, а также не особо неудобен в использовании
UPD: to_chars имеет fmt, в котором можно обозначить hex, но все также не умеет в добавление незначащих нулей
А зачем тебе нули в начале? Последний раз я их использовал в 5 классе, чтобы поприкалываться над учительницей математики.
 
Ответить с цитированием

  #5096  
Старый 19.02.2021, 13:21
kin4stat
Флудер
Регистрация: 06.11.2017
Сообщений: 2,759
С нами: 4483143

Репутация: 183


По умолчанию

Цитата:
Сообщение от Vintik  

А зачем тебе нули в начале?
За мясом

Цитата:
Сообщение от FomikuS  

("%06X"):format
Цитата:
Сообщение от Vintik  

Последний раз я их использовал в 5 классе, чтобы поприкалываться над учительницей математики.
Как минимум чтобы числа когда ты печатаешь их в лог, были друг под другом, а не в разнобой, самому же удобнее читать, ну
 
Ответить с цитированием

  #5097  
Старый 19.02.2021, 13:36
SR_team
Флудер
Регистрация: 26.10.2013
Сообщений: 4,924
С нами: 6603505

Репутация: 183


По умолчанию

Цитата:
Сообщение от KiN4StAt  

_itoa это платформозависимая функция
есть itoa, которая не платформозависимая

Цитата:
Сообщение от KiN4StAt  

не умеет в добавление нулей в начало
а они нужны?

Цитата:
Сообщение от KiN4StAt  

и конвертация в hex
умеет

UPD: Да, заметил, нули ему нужны. Энивей, sprintf возможно будет быстрее стримов, т.к. там нахер не нужные локали
 
Ответить с цитированием

  #5098  
Старый 19.02.2021, 14:59
kin4stat
Флудер
Регистрация: 06.11.2017
Сообщений: 2,759
С нами: 4483143

Репутация: 183


По умолчанию

Цитата:
Сообщение от SR_team  

есть itoa, которая не платформозависимая

а они нужны?

умеет

UPD: Да, заметил, нули ему нужны. Энивей, sprintf возможно будет быстрее стримов, т.к. там нахер не нужные локали
Так printf тянет локали ведь

P.S. В своем решение я хотел показать «более плюсовый» метод
 
Ответить с цитированием

  #5099  
Старый 20.02.2021, 00:17
Dark_Knight
Флудер
Регистрация: 18.03.2013
Сообщений: 4,080
С нами: 6921957

Репутация: 183


По умолчанию

Цитата:
Сообщение от KiN4StAt  

Застрелись.

C++:





[CODE]
std
::
string
IntToHexString
(
unsigned
int
digit
)
{
std
::
stringstream Hex
;
Hex
1613765960848.pngDark_Knight · 19 Фев 2021 в 23:17' data-fancybox="lb-post-674298" data-lb-caption-extra-html="" data-lb-sidebar-href="" data-single-image="1" data-src="https://www.blast.hk/attachments/86915/" style="cursor: pointer;" title="1613765960848.png">


[/COLOR]
 
Ответить с цитированием

  #5100  
Старый 20.02.2021, 01:32
kin4stat
Флудер
Регистрация: 06.11.2017
Сообщений: 2,759
С нами: 4483143

Репутация: 183


По умолчанию

Цитата:
Сообщение от Dark_Knight  

Я бы еще std::setfill('0') завез в первый вариант
Цитата:
Сообщение от Спойлер  


Ну, вдруг оно само там додумается ;D
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.