There are many applications that store numbers in strings that also contain text. For example, some databases store dates as strings in the form of “01Jan”. You can extract the number from a string by using the standard function strtol() (“string to long”). In the following example, strtol() extracts the number 14 from the string “14-Feb” and assigns that number to n:
#include int main() { char s[] = "14-Feb"; long n = strtol(s, NULL, 10); //n = 14 }
In this example, the radix is decimal. However, you can specify any radix between 2 through 36 as the third argument of strtol(). Alternatively, you can let strtol() deduce the radix automatically according to the numeric characters it reads from the scanned string by supplying 0 as the radix value.