📜  C++ strtoull()(1)

📅  最后修改于: 2023-12-03 14:39:53.333000             🧑  作者: Mango

C++函数介绍:strtoull()

简介:

在C++中,strtoull()函数用于将字符串转换为无符号long long类型的整数。

语法:
unsigned long long strtoull(const char *str, char **endptr, int base);

参数说明:

  • str:要被转换的字符串
  • endptr:如果提供,指向第一个未被转换的字符的指针
  • base:进制,可以是2到36,如果设置为0,则自动判断进制,如果以0x0X开头则当成十六进制解析,如果以0开头则当成八进制解析

返回值:

返回无符号long long型整数结果

用法示例:
#include <iostream>
#include <cstdlib>

int main() {
    char str[] = "1234567890";
    char *endptr;
    unsigned long long res;

    res = strtoull(str, &endptr, 10);
    std::cout << res << std::endl;

    return EXIT_SUCCESS;
}
1234567890

这里是将字符串"1234567890"转换为一个无符号long long数。

注意事项:
  • 返回值可能是正数或者ULLONG_MAX(按照无符号long long的定义)
  • 如果字符串不是合法的数字,那么返回0
  • 如果提供的指针是NULL,则不会设置未转换的字符
  • 如果转换超出了long long的表示范围,那么会触发undefined的行为,需要注意
  • 更多的使用说明可以在官方文档查找。