在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
函数的第二个参数是一个指向字符的指针,它将存储转换后剩余字符串的位置。我们可以通过检查这个指针是否指向字符串的末尾来判断是否完全转换。如果转换成功,我们将输出转换后的长整型值;否则,我们将输出未转换部分的字符串。