CRT*_*low 1 c++ command-line-arguments
这是我的代码:
#include <iostream>
using namespace std;
int main (int argc, char* argv[])
{
int frstNumb = atoi (argv[1]);
int scndNumb = atoi (argv[2]);
int sum = 0;
sum = frstNumb + scndNumb;
}
Run Code Online (Sandbox Code Playgroud)
好的,现在它正在为整数工作.我必须做什么,所以我可以在参数中添加"2.5和1.2"?该程序不会计算这种数字.救命?
谢谢
参数始终作为字符串传递.首先,将main函数声明更改为
int main (int argc, char* argv[])
Run Code Online (Sandbox Code Playgroud)
请注意,main的返回值必须为int,否则为非标准.
第二次转换argv[1]和argv[2]整数与其中任何atoi一个,根据我的口味,有点C-ish,虽然最简单,或者boost::lexical_cast
例如
int i1 = atoi(argv[1]); //#include <cstdlib>
int i1 = boost::lexical_cast<int>(argv[1]); //#include <boost/lexical_cast.hpp>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2563 次 |
| 最近记录: |