关于字符串转换
请问用什么函数可以将 "0xFF00FF00 "转换成0xFF00FF00?
找了半天不知道用什么函数
谢谢
[解决办法]
atoi
sscanf
都可以做到
[解决办法]
推荐SSCANF
[解决办法]
int Tran(char *s)
{
int n=0;
for(int i=2;i <10;++i){
switch(s[i]){
case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 9:
n+= s[i]-0x30;break;
case 'a ':case 'b ':case 'c ':case 'd ':case 'e ':case 'f ':
n+= s[i]-0x57;break;
case 'A ':case 'B ':case 'C ':case 'D ':case 'E ':case 'F ':
n+= s[i]-0x37;break;}
if(i <9)n < <=4;}
return n;
}
[解决办法]
atoi是不可以的
因为它是遇到第一个不为数字的位置结束
所以应该这样做
用一个指针指向字符串的第二个字符的位置
用一个指针指向字符串的末尾
从尾到第二个位置扫描一遍
根据字符和数字分别进行计算
这样在按位相加
就可以得到最终 结果