为了账号安全,请及时绑定邮箱和手机立即绑定

请问std :: stoi问题,不适用于MinGW GCC 4.7.2

/ 猿问

请问std :: stoi问题,不适用于MinGW GCC 4.7.2

C++
Cats萌萌 2020-01-06 08:00:29

#include <iostream>

#include <string>


int main()

{

    std::string test = "45";

    int myint = stoi(test);

    std::cout << myint << '\n';

}

我在运行MinGW GCC 4.7.2的计算机上尝试了此代码。它给了我这个错误:

我在做什么错,我是从cppreference那里得到的。其完全相同的代码。并描述了它从一个不同的错误在这里。


查看完整描述

3 回答

?
冉冉说

看来您的MinGW需要修补程序:在MinGW中启用字符串转换功能

此补丁启用了std名称空间中的以下C ++ 11函数和模板列表:

stoi,stol,stoul,stoll,stof,stod,stold,to_string,to_wstring

在上面的链接中,有一个.zip文件,下载并

  • 将wchar.h和stdio.h从zip文件中的include目录复制到以下目录(覆盖):C:\ mingw \ include(用适当的目录替换C:\ mingw \)

  • 将os_defines.h复制到以下目录(覆盖):C:\ mingw \ lib \ gcc \ mingw32 \ 4.7.0 \ include \ c ++ \ mingw32 \ bits(用适当的目录替换C:\ mingw \)(替换4.7。 0和正确的版本号)



查看完整回答
反对 2020-01-07
?
春华秋衣

另一种解决方案是使用MinGW-w64,它可以直接使用。这是MinGW的一个分支,可以生成32位和64位版本。


查看完整回答
反对 2020-01-07
?
翻阅古今

人们应该注意,在MinGW GCC 4.7之后的版本中,不能保证直接替换文件是安全的 -请使用pastebin代码片段,打开文件以及对现有文件进行注释/添加。这样应用,这在MinGW GCC 4.8.1 afaik

查看完整回答
反对 2020-01-07

添加回答

回复

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信