Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

c++字符串转int

作者:卍…`傷`   发布日期:2026-07-31   浏览:47

#include <iostream>
#include <string>
#include <cstdlib> // for atoi

int main() {
    std::string str = "12345";
    int num;

    // 使用 atoi 函数将字符串转换为整数
    num = atoi(str.c_str());
    std::cout << "Using atoi: " << num << std::endl;

    // 使用 stoi 函数将字符串转换为整数 (C++11 及以上)
    try {
        num = std::stoi(str);
        std::cout << "Using stoi: " << num << std::endl;
    } catch (const std::invalid_argument& e) {
        std::cerr << "Invalid argument: " << e.what() << std::endl;
    } catch (const std::out_of_range& e) {
        std::cerr << "Out of range: " << e.what() << std::endl;
    }

    return 0;
}

解释说明:

  1. atoi 函数:这是 C 标准库中的一个函数,用于将 C 风格的字符串(以空字符结尾的字符数组)转换为整数。它非常简单易用,但如果输入的字符串不是有效的整数格式,它会返回 0,并且不会抛出异常,因此在某些情况下可能会导致错误。

  2. std::stoi 函数:这是 C++11 引入的一个更安全的函数,用于将 std::string 类型的字符串转换为整数。它会在遇到无效输入时抛出 std::invalid_argument 异常,在超出整数范围时抛出 std::out_of_range 异常。因此,使用 std::stoi 时最好加上异常处理机制。

  3. 异常处理:在使用 std::stoi 时,建议使用 try-catch 块来捕获可能的异常,以确保程序在遇到无效输入或超出范围的情况时能够正确处理。

如果你需要更简单的代码示例,可以只使用 std::stoiatoi,但为了安全性和健壮性,推荐使用 std::stoi 并加上异常处理。

上一篇:c++函数返回数组

下一篇:c++ http请求

大家都在看

c++闭包

c++向上取整的代码

c++单引号和双引号的区别

c++ 注释

c++如何判断素数

c++怎么输入字符串

c++字符串切片

c++ functional

嵌入式c++

c++框架代码

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站