我如何将主参数传递给其他函数?

问题描述 投票:-1回答:1

我被要求编写一个程序,该程序从控制台获取3个参数,然后使用这些值来估计其他函数的值。我真的不知道如何在其他函数中使用这些值。我试图做这样的事情,但是不起作用:

#include <iostream>

using namespace std;

void logis(double a, double xz, int n){
    if (n == 0){return;}
    else{
        double x = a*xz(1-xz);
        logis(a, x, n-1);
        cout << n << "  " << x << endl;
    }
}

int main(int argc, char* argv[]){

    if (argc != 4){
        cout << "You provided 2 arguments, whereas you need to provide 3. Please provide a valid number of parameteres";
    }
    else{
        double a = argv[1];
        double x0 = argv[2];
        int n = argv[3];
        logis(a, x0, n);
    }

return 0;
}

有人可以帮我吗?我仍不担心该函数是否起作用,只是无法将这些值传递给我的函数。

c++ function main args
1个回答
0
投票

您需要包含标题<cstdlib>

#include <cstdlib>

并使用函数strtodstrtol(或atoi)。例如

    double a = std::strtod( argv[1], nullptr );
    double x0 = std::strtod( argv[2], nullptr );
    int n = std::atoi( argv[3] );
© www.soinside.com 2019 - 2024. All rights reserved.