如何自动运行具有不同量的特定参数的C 代码
how to automatically run a c++ code with different amounts for specific parameters
我有一个C 中的代码,我应该通过更改我拥有的两个参数(alpha and Cost)的值来单独运行许多版本。
它们的版本如下:
for (int cost = 0; cost <= 100; cost+=5){
for(float alpha = 0.5; alpha<=2.5; alpha+=0.1){
我不知道该如何实现,我为此搜索了很多东西,但是更多的东西太复杂或不适合我。预先感谢您的帮助。
我代码的结构很简单。除了主要函数以外,我有两个功能。我正在Windows 7中使用Visual Studio 2012
P.S。这些计算不是我的,我将把程序的EXE文件传递给群集计算机。总体而言,应该有400套不同的版本,我需要5个重复。
这里我最终发现并为我工作的东西:
int main(int argc, char const *argv[]){
for (int cost = 0; cost <= 100; cost+=5){
for(float alpha = 0.5; alpha<=2.5; alpha+=0.1){
string s1 = to_string(cost);
char const *pchar1 = s1.c_str();
argv[1] = pchar1;
string s2 = to_string(alpha);
char const *pchar2 = s2.c_str();
argv[2] = pchar2;
. . .
不确定我确切地理解您想要什么,但是以下可能会有所帮助:
-
您必须多次致电
my_f(int argc, const char*argv[])
:int main(int argc, char *argv[]){ for (int cost = 0; cost <= 100; cost += 5) { for (float alpha = 0.5f; alpha <= 2.5f; alpha += 0.1f) { const int myargc = 2; const std::string scost = std::to_string(cost); const std::string salpha = std::to_string(alpha); const char* myargv[] = { scost.c_str(), salpha.c_str() }; my_f(myargc, myargv); } } return 0; }
-
您必须启动
my_a.exe cost alpha
我建议使用shell脚本几次使用不同参数启动应用程序。
其他在C 中,您必须使用fork
/exec
...
相关文章:
- 如何使基类的运算符对基类的可变参数数可见(请参阅下面的代码)?
- 根据编译时参数在 C 中重复代码
- 扩展C++生成的代码的模板参数类型名称
- 将函数作为参数传递以避免重复代码
- 标准对此指向成员函数类型模板参数有何说明?是我的代码有误,还是 MSVS 16.6 有问题?
- C++基于输入参数的动态代码生成
- 调用参数不是原子参数的函数是此代码引发异常的原因吗?
- 引入参数化构造函数后显示 LNK 2019 未解析外部符号的代码错误
- 在 Metal 着色器代码中,如何定义函数的 in/out 参数变量?
- C++17.处理使用 auto 相关的模板参数.代码排序困难
- 为什么EclipseCDT代码格式化程序有时会在模板参数中引入空格
- 我写了一个类,它总是将其函数参数委托给它的成员,我该如何改进代码
- 编译器是否C++具有相同模板参数集的每个模板类实例生成代码?
- 如何将char数组声明为函数参数?或告诉我此代码中还有其他问题?
- 我的代码在作为参数传入 .begin() 时不起作用,但在我将 .begin() 转换为迭代器后工作
- 如何基于构造函数参数模板化类成员函数的代码
- 在存在错误代码的情况下输出参数与 NRVO
- 在完美转发函数中公开参数类型,避免代码重复
- 中断长代码 snprintf 格式和参数
- 使用 const double* const 作为模板参数 - 代码性能问题