Strtol ()-converts a string into a growth integer.

Source: Internet
Author: User
Related functions: atof, atoi, atol, strtodd, strtoul
Header file: # include <stdlib. h>
Define the function: long int strtol (const char * nptr, char ** endptr, int base)
Function Description: strtol () converts the nptr parameter string to the Growth integer number based on the base parameter. The base parameter ranges from 2 to 36, or 0. The base parameter indicates the base method, as shown in figure If the base value is 10, the string is in decimal format)If the base value is 16, the string is in hexadecimal notation ). When the base value is 0, the conversion is made using 10. However, if the '0x 'prefix character is encountered, the hexadecimal conversion is made using 16. At the beginning, strtol () scans the nptr parameter string and skips the leading space character until it starts to convert in case of a number or positive or negative sign, when a non-number or string ends ('/0'), the conversion ends and the result is returned. If the endptr parameter is not NULL, the character pointer in the nptr that is terminated due to an exception is returned by the endptr.
Return Value: return the converted long integer. Otherwise, the error code is returned and stored in errno.
Note: The conversion string specified by ERANGE is out of the valid range.

Convert strings a, B, and c into numbers in hexadecimal notation 10, 2, and 16, respectively.
------------------------------------------------
# Include <stdlib. h>
# Include <stdio. h>
Main ()
{
Char a [] = "100 ";
Char B [] = "100 ";
Char c [] = "ffff ";
Printf ("a = % d/n ",Strtol(A, NULL, 10); // 100
Printf ("B = % d/n", strtol (B, NULL, 2); // 4
Printf ("c = % d/n", strtol (c, NULL, 16); // 65535
}

"100" ---> 100 (Dec) ---> 100 (Dec)
"100" ---> 100 (BIN) ---> 4 (Dec)
"Ffff" ---> ffff (Hex) ---> 65535 (Dec)

Each character in string B occupies one Byte (1 Byte = 8 bits) space in the memory,Convert the content of several (3) bytes to a binary number (string "100" removes double quotation marks and is a binary number 100)In decimal format.4Print it out
 

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.