代码块编译"wrong" cpp.sh 正确执行

Codeblocks compiles "wrong" cpp.sh does it correctly

本文关键字:执行 sh wrong 编译 代码 cpp      更新时间:2023-10-16

我有这个代码

#include <iostream>
#include <cmath>
#include <iomanip>
using namespace std;

double log2x;
double logx;

int main()
{
    std::cout << std::setprecision(6) << std::fixed;
    int lines;
    cout << "How many lines would you like to calculate? " << endl;
    cin >> lines;
    cout << "x             " << "  log10x        " << "  log2x          " <<   "logx " << endl;
    cout << "-------------------------------------------------------" << endl;
    int stepcount = 1;
    int exponentstep = 0;
    int logvariable;
    for (int i = 0 ; i < lines; i++)
    {
        logvariable = stepcount * pow(10,exponentstep);
        log10x = log10(logvariable);
        log2x = log2(logvariable);
        logx = log(logvariable);
        stepcount++;
        while (stepcount == 10)
        {
            stepcount = 1;
            exponentstep++;
        }
        cout << left << setw(10) << logvariable << left << "     " << setw(10) << log10x << "     " << setw(10) << log2x << "     " << setw(10) << logx << endl;
    }

    return 0;
}

它输出值 1-9 * 10^n 的自然对数函数,因此1 2 3 4 5 6 7 8 9 10 20 30 40 50 60 70 80 90 100 200 等我非常确信我所拥有的会起作用,但我的代码块会给出 10 个正确答案,然后是 10 个错误答案。我试了 cpp.sh,效果很好。不知道为什么?我根本无法让它在视觉工作室中编译,也没有收到足够有用的错误消息来弄清楚它。代码块会弄乱看似有效的代码的任何原因?非常感谢。

double log2x;
double logx;
//You forgot to declare log10x
double log10x;

应将代码复制到文本文档中并创建新项目。创建新项目后,转到"查看",然后转到经理或shift+f2,您应该会看到您的项目。确保 main.cpp 在"源"在您的项目下并粘贴代码、保存并编译它。

一切都对我有用,一旦我声明了log10x,它看起来就像正确的答案,所以尝试创建一个新项目,如果这没有帮助,我相信你错误地创建codeBlock项目,我可以引导你完成它,它非常简单。