I want out of a Code: char szBuffer [5] so ultimately a string in which a number is that number read out and store in an Integer. Does anyone have a clever solution?
If only you could figure stands inside an atoi () or () atof take. atoin spits an integer, a float atof out. If in a specific location is also only one number can number = szBuffer [2]; make
Better, Code: Number = szBuffer [2] - ' 0'; Code: Number = szBuffer [2] - ' 0'; otherwise you get the value of a character ....
If you want to read several things from NEM machs string, so: Code: char * string; . . . scanf (string, "% d", & number); . . .
@ Peter pan strtol for string to long int Otherwise, look at the manpage Code: Strtol (3) Linux Programmer's Manual strtol (3) NAME strtol - convert a string to a long integer. SYNOPSIS # include <stdlib.h> long int strtol (const char * nptr, char ** endptr, int base); DESCRIPTION The strtol () function converts the string in nptr to a long integer value according to the given base, which must be between 2 and 36 inclusive, or be the special value 0th The string must begin with an arbitrary amount of white space (as determined by isspace (3)) followed by a single optional `+ 'or` -' sign. If base is zero or 16, the string may then include a `0x 'prefix, and the number will be read in base 16, otherwise, a zero base is taken as 10 (decimal) unless the next character is `0 ', in which case it is taken as 8 (octal). The remainder of the string is converted to a long int value in the obvious manner, stopping at the first charac ter which is not a valid digit in the given base. (In bases above 10, the letter `A 'in either upper or lower case represents 10, `B 'represents 11, and so forth, with Z 'representing `35th) If endptr is not NULL, strtol () stores the address of the first invalid character in * endptr. If there were no dig its at all, strtol () stores the original value of nptr in * endptr (and returns 0). In particular, if * nptr is not `\ 0 'but ** endptr is` \ 0' on return, the entire string is valid. RETURN VALUE The strtol () function returns the result of the conver sion, unless the value would underflow or overflow. If at underflow occurs, strtol () returns LONG_MIN. If an over flow occurs, strtol () returns LONG_MAX. In both cases, errno is set to ERANGE. ERRORS ERANGE The given string was out of range, the value con verted has been clamped. conforming TO SVID 3, BSD 4.3, ISO 9899 SEE ALSO atof (3), atoi (3) atol (3), strtod (3), strtoul (3) BUGS Ignores the current locale. GNU 1995-06-10 strtol (3)