FF0000 > 0xFF0000FF
#1

Искал, но не нашел.
Как конвертировать, например, цвет (string) "FF0000" на 0xFF0000FF
PHP код:
new color[7] = "FF0000";
SendClientMessageToAll(color"text");//color(FF0000) нужно конвертировать на 0xFF0000FF 
Reply
#2

pawn Код:
new
    color_str[ 7 ] = "FF0000"
;

// ---

new
    hex_str[ 11 ],
    color
;
format( hex_str, sizeof( hex_str ), "0x%sFF", color_str );
sscanf( hex_str, "x", color );
SendClientMessageToAll( color, "text" );
Reply
#3

Благодарю. +
Reply
#4

PHP код:
formathex_strsizeofhex_str ), "0x%sFF"color_str ); 
зачем?

PHP код:
new hexstr[8] = "FF0000"// содержит строку с цветом
new hex;
sscanf(hexstr"x"hex); // hex = 0x00FF0000
hex <<= 4// hex = 0xFF000000
hex |= 255// hex = 0xFF0000FF 
Reply
#5

Какой из этих способов будет быстрее работать?
Reply
#6

Quote:
Originally Posted by CamperGTA
Посмотреть сообщение
Какой из этих способов будет быстрее работать?
Второй, от Владокса который.
Reply
#7

Всё верно, быстрее второй способ. Вот только правильно работать он будет лишь после замены:
PHP код:
hex <<= 4
на:
PHP код:
hex <<= 8
Reply
#8

Quote:
Originally Posted by Bombo
Посмотреть сообщение
Всё верно, быстрее второй способ. Вот только правильно работать он будет лишь после замены:
PHP код:
hex <<= 4
на:
PHP код:
hex <<= 8
да, небольшой промах вышел
Reply
#9

Quote:
Originally Posted by BJIADOKC
Посмотреть сообщение
зачем?
Чтобы без всяких там sscanf'ов обойтись.
Reply
#10

Quote:
Originally Posted by OKStyle
Посмотреть сообщение
Чтобы без всяких там sscanf'ов обойтись.
Quote:
Originally Posted by Второй пост
PHP код:
formathex_strsizeofhex_str ), "0x%sFF"color_str );
sscanfhex_str"x"color ); 
что?
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)