C/C++: Converting hexadecimal value in char to integer

前端 未结 7 1658
萌比男神i
萌比男神i 2021-01-01 06:28

I have hexadecimal values stored as characters:

char A = \'0\';
char B = \'6\';
char C = \'E\';

... I need them coverted to integers. I kno

7条回答
  •  青春惊慌失措
    2021-01-01 06:39

    In C:

    const char chrs[] = "0123456789ABCDEF";
    
    int value = -1; // sentinel
    const char *loc = strchr(chrs, ch);
    if (loc)
        value = loc - chrs;
    

    or, using C++:

    const std::string chrs("0123456789ABCDEF");
    int value = chrs.find(ch);
    

提交回复
热议问题