C

Cで色文字列#ffffffからRGBへ変換

More than 1 year has passed since last update.

strtol で long に変換してから rgb 値をとればよい。

uint32_t rgb = (uint32_t) strtol((const char *) &str[1], NULL, 16);

uint8_t red = (rgb >> 16) & 0xFF;
uint8_t green = (rgb >> 8) & 0xFF;
uint8_t blue = (rgb >> 0) & 0xFF;