字符十六进制转十进制

#include”stdio.h”

int strhex_to_int( char *str, int start_pos, int len )

{

        int i, int_data=0;

        str += start_pos;

        for( i=0; i<len; i++ ){

                int data;

                if( str[i] >= ‘0’ && str[i] <= ‘9’ )

                        data = str[i] – ‘0’;

                else if( str[i] >= ‘a’ && str[i] <= ‘f’ )

                        data = str[i] – ‘a’ + 10;

                else if( str[i] >= ‘A’ && str[i] <= ‘F’ )

                        data = str[i] – ‘A’ + 10;

                else

                        return 0;

                int_data = int_data * 16 + data;

        }

        return int_data;

}

void main(){

        printf(“data=%d\n”,strhex_to_int(“22f3”,0,2));

}

    原文作者:进制转换
    原文地址: https://blog.csdn.net/xiewenhao12/article/details/51253452
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞