c++

c++中strtoll函数如何转换字符串

小樊
81
2024-09-15 16:16:06
栏目: 编程语言

在C++中,strtoll函数用于将字符串转换为长整型(long long

以下是一个使用strtoll函数的示例:

#include<iostream>
#include<string>
#include <cstdlib> // 包含 strtoll 函数的头文件

int main() {
    std::string str = "123456789012345";
    char* end; // 用于存储转换后剩余字符串的指针
    long long result = std::strtoll(str.c_str(), &end, 10); // 使用 strtoll 函数进行转换,基数为10(十进制)

    if (end == str.c_str() + str.size()) { // 判断是否完全转换
        std::cout << "转换成功,结果为:"<< result<< std::endl;
    } else {
        std::cout << "转换失败或部分转换。未转换部分为:"<< end<< std::endl;
    }

    return 0;
}

在这个示例中,我们将一个表示十进制数值的字符串转换为长整型。strtoll函数的第二个参数是一个指向字符的指针,它将存储转换后剩余字符串的位置。我们可以通过检查这个指针是否指向字符串的末尾来判断是否完全转换。如果转换成功,我们将输出转换后的长整型值;否则,我们将输出未转换部分的字符串。

0
看了该问题的人还看了