C++代码报错‘total未定义’,请求排查并解决问题
问题排查与解决
错误原因
在getTotal函数的定义中,你直接使用total += prices[i]进行累加操作,但**total变量从未在该函数内部声明和初始化**。C++是强类型语言,所有变量必须先声明才能使用,编译器找不到total的定义,因此抛出"total is undefined"的错误。
修复后的代码
#include <iostream> using namespace std; double getTotal(double prices[], int size); // 函数声明 int main(){ double prices[] = {5.63, 4.21, 75, 6.14, 2.4}; int size = sizeof(prices) / sizeof(prices[0]); double total = getTotal(prices, size); // 调用函数 cout << "$ " << total << endl; return 0; } double getTotal(double prices[], int size) // 函数定义 { double total = 0; // 声明并初始化累加变量 for (int i = 0; i < size; i++) { total += prices[i]; } return total; }
关键修改点
- 在
getTotal函数内部添加double total = 0;,明确声明变量并初始化为0(避免垃圾值干扰累加结果) - 将原代码中的换行符
' '替换为标准的endl,保证输出换行的跨平台兼容性
内容的提问来源于stack exchange,提问作者biswajit tripathy
相关产品推荐
相关产品推荐

