简单平均计算器的问题
Issues with simple mean calculator
#include <string>
#include <iostream>
using namespace std;
int main(int argc, char* argv[]) {
//Make sure there is an argv[1] to check
if (1 < argc) {
std::string option = std::string(argv[1]);
if ("mean" == option) {
float sum = 0;
cout << (argc)<<"n";
for (int i = 0; i<= argc; i++){
sum = sum+reinterpret_cast<int>(argv[i]);
}
cout<<(sum)<<"n";
cout<<(argc)<<"n";
cout<<(sum/argc)<<"n";
}
return 0
}
我是 c++ 的新手,但这段代码为我输入的内容返回了可笑的值。 例如,我使用命令行"homework1 表示 1 2 3 4",值以千万亿为单位。 如果有帮助,我正在使用 64 位机器,我是 c++ 的新手,所以我不确定问题是什么。 感谢您的任何帮助。
首先,reinterpret_cast
不会将字符串转换为整数。使用类似 std::stod
.(取决于要执行的错误检查量。
二、这些界限
for (int i = 0; i<= argc; i++)
将不起作用,因为 argv[0] 是可执行文件的名称,而 argv[argc] 是空指针。用
for (int i = 2; i < argc; i++){
sum += std::stof(argv[i]);
}
请注意,编译器需要支持 c++11 才能正常工作。(std::stof
等已添加到标准的 C++11 修订版中。如果没有,您将需要使用 sum += strtof(argv[i], NULL);
.有关更多详细信息,请参阅 strtof
的文档。
相关文章:
- 使用 BMI 计算器对C++中的数字进行四舍五入的问题
- 桌面计算器出现问题.C++程序设计语言
- 如果 GPA 计算器的语句问题
- 我的C++计算器似乎出了什么问题?
- 创建一个简单的计算器,添加时遇到问题
- 六计算器问题.有人可以再次检查我的代码吗?
- DEV简单的C GPA计算器问题
- C++序列计算器x_{n+1} = f(x_n),数学函数有问题
- 具有"else if"方法问题 C++ 的基本计算器
- 简单平均计算器的问题
- 计算贷款计算器程序的总利息的问题(C++)
- RPN计算器(将操作数应用到堆栈时出现问题)
- 简单的计算器程序出了什么问题
- C++新手 - 基本计算器问题
- 后缀表示法计算器 (RPN) 问题C++
- 我的计算器有问题
- C++BMI计算器问题
- C++计算器程序.问题
- C++成绩计算器问题
- Qt计算器的问题- c++