Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/126.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ std::stoi问题,不适用于MinGW GCC 4.7.2 #包括 #包括 int main() { std::string test=“45”; int-myint=stoi(测试); std::cout_C++_Mingw - Fatal编程技术网

C++ std::stoi问题,不适用于MinGW GCC 4.7.2 #包括 #包括 int main() { std::string test=“45”; int-myint=stoi(测试); std::cout

C++ std::stoi问题,不适用于MinGW GCC 4.7.2 #包括 #包括 int main() { std::string test=“45”; int-myint=stoi(测试); std::cout,c++,mingw,C++,Mingw,看来您的MinGW需要一个补丁: 此修补程序支持以下C++11函数和模板列表 在std命名空间中: 斯托伊,斯托尔,斯托尔,斯托尔,斯托夫,斯托德,斯托尔德, 到字符串,到字符串 在上面的链接中,有一个.zip文件,请下载并 从zip文件的include目录复制wchar.h和stdio.h 到以下目录(覆盖):C:\mingw\include(替换 C:\mingw\和相应的目录) 将os_defines.h复制到以下目录(覆盖): C:\mingw\lib\gcc\mingw32\4.7.

看来您的MinGW需要一个补丁:

此修补程序支持以下C++11函数和模板列表 在std命名空间中:

斯托伊,斯托尔,斯托尔,斯托尔,斯托夫,斯托德,斯托尔德, 到字符串,到字符串

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

  • 从zip文件的include目录复制wchar.h和stdio.h 到以下目录(覆盖):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替换为 正确的版本号)

另一个解决方案是使用,它可以在开箱即用的情况下正常工作。这是一个MinGW分支,可以生成32位和64位版本。

这是相同的错误。看起来不同,但情况相同。MinGW问题。我有这个问题。我个人必须进去手动注释一个PP条件,然后它可以在非WString中正常工作。@chris你可以吗解释一下你要注释什么?@orian,我强烈建议答案中的补丁。它工作得更好,更安全、更容易。人们应该注意,直接替换文件并不保证在MinGW GCC 4.7之后的版本上是安全的-使用pastebin代码段,打开文件,并注释/添加到现有文件中。应用为因此,这在MinGW GCC 4.8.1 afaik上仍然可以正常工作
#include <iostream>
#include <string>

int main()
{
    std::string test = "45";
    int myint = stoi(test);
    std::cout << myint << '\n';
}