在c++中接受两个参数以便将它们相加
Accepting two arguments in order to add them together in C++
为了完成我发现的一项学习任务,我用c++写了下面的代码。目标是接受两个参数,并在输出它们之前将它们相加。
我用g++编译了这个程序,并试图通过调用。/a来运行它。出12个。结果是1。它似乎没有打印出x + y,只是显示了第一个参数。我哪里做错了?我的期望是显示数字3。
#include <iostream>
using namespace std;
int x, y, z;
int main( int argc, char *argv[] ) {
y = atoi(argv[0]);
x = atoi(argv[1]);
z = (x + y);
cout << z << endl;
return 0;
}
免责声明-这来自课本,但我不是做这个作业。
argv[0]是程序的名称。你需要argv[1]和argv[2]
和BTW -你得到1的原因是因为atoi在第一个非数字上停止,在你的情况下,它立即停止并在读取程序名称时返回零。所以y = 0 x = 1
相关文章:
- 具有两个间接寻址运算符 (C++) 的函数参数的用途
- 如何允许模板参数中的类类型,仅当它有两个基类时
- C++如果两个模板函数都与参数列表匹配,将调用哪个模板
- 如何从两个不同的函数传递参数
- 两个函数模板候选项.将一个参数作为引用后,选择不太专业的模板
- 命令行参数,cant 或两个变量
- 为什么在传递长整型时调用具有两个双精度类型的参数的重载函数?
- 如何创建两个具有相同名称和不同返回类型并基于布尔参数运行的函数
- 具有两个或多个模板参数的 C++ assigment 运算符
- 检查两个模板参数是否相同
- sscanf() 有两个字符串参数
- 如何在两个树通用的函数中创建一个参数?
- 为什么C++不允许两个同名的函数/类模板,区别仅在于非类型模板参数(整型)的类型?
- 为什么模板参数推导不适用于仅指定前两个参数的可变参数模板类?
- 用相同的参数声明两个构造函数的最偶像化的方法是什么?
- C++如何在 switch 语句中放置两个参数
- 为什么我不能用两个参数重载 C++ 运算符 []?
- 专门处理一个参数(C++模板)的两个模板参数
- C++stoi:这两个重载都无法转换所有参数类型
- 如何实现对参数顺序不可知的std::same_as的广义形式(即对于两个以上的类型参数)