首页 > 代码库 > 在C++中关于颜色值和十六进制字符串之间的转换

在C++中关于颜色值和十六进制字符串之间的转换

在C++中颜色值一般是用uint(无符号整数)来表示的,但将颜色保存成文本(JSON或XML)时,一般会用十六进制表示,即0xff0000等样式,

那么在读取颜色的时候该如何处理呢?可以参考以下代码:

#include <stdio.h>  
int main()  
{  
	char	szValue[]  =   "0xff0000";    
	char 	ch[32]; 
	int	nValude    =   0;         
	sscanf(szValue,"%x",&nValude);	//十六进制转数字 
	sprintf(ch,"%d",nValude); 	//数字转字符
    	printf("%d/n",nValude);  
	return 0;     
} 



在C++中关于颜色值和十六进制字符串之间的转换