Movatterモバイル変換


[0]ホーム

URL:


cppreference.com
Namespaces
Variants
    Actions

      atoi, atol, atoll

      From cppreference.com
      <c‎ |string‎ |byte
       
       
       
       
      Defined in header<stdlib.h>
      int       atoi(constchar* str);
      (1)
      long      atol(constchar* str);
      (2)
      longlong atoll(constchar* str);
      (3)(since C99)

      Interprets an integer value in a byte string pointed to bystr. The implied radix is always10.

      Discards any whitespace characters until the first non-whitespace character is found, then takes as many characters as possible to form a valid integer number representation and converts them to an integer value. The valid integer value consists of the following parts:

      • (optional) plus or minus sign
      • numeric digits

      If the value of the result cannot be represented, i.e. the converted value falls out of range of the corresponding return type, the behavior is undefined.

      Contents

      [edit]Parameters

      str - pointer to the null-terminated byte string to be interpreted

      [edit]Return value

      Integer value corresponding to the contents ofstr on success.

      If no conversion can be performed,0 is returned.

      [edit]Notes

      The name stands for “ASCII to integer”.

      [edit]Example

      Run this code
      #include <stdio.h>#include <stdlib.h> int main(void){printf("%i\n", atoi(" -123junk"));printf("%i\n", atoi(" +321dust"));printf("%i\n", atoi("0"));printf("%i\n", atoi("0042"));// treated as a decimal number with leading zerosprintf("%i\n", atoi("0x2A"));// only leading zero is converted discarding "x2A"printf("%i\n", atoi("junk"));// no conversion can be performedprintf("%i\n", atoi("2147483648"));// UB: out of range of int}

      Possible output:

      -12332104200-2147483648

      [edit]References

      • C23 standard (ISO/IEC 9899:2024):
      • 7.22.1.2 The atoi, atol, and atoll functions (p: TBD)
      • C17 standard (ISO/IEC 9899:2018):
      • 7.22.1.2 The atoi, atol, and atoll functions (p: 249)
      • C11 standard (ISO/IEC 9899:2011):
      • 7.22.1.2 The atoi, atol, and atoll functions (p: 341)
      • C99 standard (ISO/IEC 9899:1999):
      • 7.20.1.2 The atoi, atol, and atoll functions (p: 307)
      • C89/C90 standard (ISO/IEC 9899:1990):
      • 4.10.1.2 The atoi function
      • 4.10.1.3 The atol function

      [edit]See also

      converts a byte string to an integer value
      (function)[edit]
      converts a byte string to an unsigned integer value
      (function)[edit]
      (C95)(C99)
      converts a wide string to an integer value
      (function)[edit]
      (C95)(C99)
      converts a wide string to an unsigned integer value
      (function)[edit]
      C++ documentation foratoi,atol,atoll
      Retrieved from "https://en.cppreference.com/mwiki/index.php?title=c/string/byte/atoi&oldid=181411"

      [8]ページ先頭

      ©2009-2025 Movatter.jp