How to convert array of hex strings to int and char in C

2 Answers

0 votes
#include <stdio.h>
#include <stdlib.h>

int main(void)
{
    char hexarr[][3] = { "61", "7A", "20", "0A", "49" };
    int i, n;
    
    for (i = 0; i < sizeof(hexarr)/sizeof(hexarr[0]); i++)
    {
        n = (int)strtol(&hexarr[i][0], NULL, 16);
        printf("%d - ", n);
        printf("%c\n", n);
    }    
   
    return 0;
}

/*
run:
  
97 - a
122 - z
32 -
10 -

73 - I

*/


answered Mar 19, 2015 by avibootz
edited Mar 19, 2015 by avibootz
0 votes
#include <stdio.h>
#include <stdlib.h>

int main(void)
{
    char hexarr[][3] = { "61", "7A", "20", "0A", "49" };
    int i, n;
    
    for (i = 0; i < sizeof(hexarr)/sizeof(hexarr[0]); i++)
    {
        sscanf(&hexarr[i][0], "%x", &n);
        printf("%d - ", n);
        printf("%c\n", n);
    }   
   
    return 0;
}

/*
run:
  
97 - a
122 - z
32 -
10 -

73 - I

*/


answered Mar 19, 2015 by avibootz

Related questions

1 answer 106 views
2 answers 96 views
96 views asked Dec 2, 2024 by avibootz
1 answer 98 views
1 answer 135 views
1 answer 142 views
1 answer 191 views
...