long int strtol(const char *nptr,char **endptr,int base);
例如:
char destdata[20];
char *dest = destdata;
char src="00d43a0195"; //mac地址
//mac转16进制
strtol(src,&dest ,16);
itoa并不是一个标准的C函数,它是Windows特有的,如果要写跨平台的程序,请用sprintf
itoa(data,yy,16)是把data变为16进制 与strtol正好相反
itoa(data, out, 10); 是把data变为10进制
在c函数中则有:
char str[255];
sprintf(str, "%x", 100); //将100转为16进制表示的字符串。
参考:http://blog.csdn.net/greenerycn/article/details/1647945
http://hi.baidu.com/jiaolingqi/blog/item/3fb63a9ba776cdb4c9eaf4b5.html