不是苏菲啊 2022-04-27 21:17 采纳率: 0%
浏览 346

C++代码在VSCode中使用Run Code运行的计算结果与DEBUG调试和在Visual Studio中的运行计算结果不一致?

C++代码在VSCode中使用Run Code运行的计算结果与DEBUG调试和在Visual Studio中的运行计算结果不一致?
代码如下:
#include <iostream>
#include <string>
#include <algorithm>
#include <math.h>
using namespace std;

int main()
{
    string str = "AB";
    reverse(str.begin(), str.end());
    int num = 0;
    for(int i=0; i<str.length(); i++)
    {
        cout<<"i="<<i<<", num="<<num<<", "<<(str[i] - 'A' + 1)<<", "<<pow(26, i)<<endl;
        // int s = str[i] - 'A' + 1;
        // int r = pow(26, i);
        // num = num + s * r;
        num = num + (str[i] - 'A' + 1) * pow(26, i);
        cout<<num<<endl;
    }
    return 0;
}

运行结果及报错内容

VSCode中的结果输出为 num=27,是错误结果,如下图:

img

Visual Studio中的结果 输出为 num=28, 是正确的, 如下图:

img

VSCode中 DEBUG下的结果 输出也为 num=28, 也是正确的,其中DEBUG使用的是MinGW中的gdb调试器, 如下图:

img

请问应该如何解决,是不是跟Run Code所默认使用的编译器或是C++ 标准有关?
谢谢
  • 写回答

2条回答 默认 最新

  • zeekliu 2022-04-27 23:37
    关注

    可能是因为 VSCode 在调用终端时的命令与其他的不一样,可以试试加一些参数
    比如:
    -std=c++11 等等

    评论

报告相同问题?

问题事件

  • 创建了问题 4月27日

悬赏问题

  • ¥30 基于信创PC发布的QT应用如何跨用户启动后输入中文
  • ¥20 非root手机,如何精准控制手机流量消耗的大小,如20M
  • ¥15 远程安装一下vasp
  • ¥15 自己做的代码上传图片时,报错
  • ¥15 Lingo线性规划模型怎么搭建
  • ¥15 关于#python#的问题,请各位专家解答!区间型正向化
  • ¥15 unity从3D升级到urp管线,打包ab包后,材质全部变紫色
  • ¥50 comsol温度场仿真无法模拟微米级激光光斑
  • ¥15 上传图片时提交的存储类型
  • ¥15 VB.NET如何绘制倾斜的椭圆