Search code examples
cperformancehexstrtol

Convert a hexadecimal string to an integer efficiently in C?


In C, what is the most efficient way to convert a string of hex digits into a binary unsigned int or unsigned long?

For example, if I have 0xFFFFFFFE, I want an int with the base10 value 4294967294.


Solution

  • You want strtol or strtoul. See also the Unix man page