新手C++程序编译问题求助
我开始学习C++,用的书是C++ Primer第四版,刚看到第10页while语句那一节。书上有个例子是计算1到10的和,我突然想把它改写成计算任意数A到B的和。就凭着自己无知者无畏的精神改写了一个,可是编译通不过了。请大家帮忙看看啊。(编译器环境是VC++7的命令行模式)程序如下:
#include <iostream>
int main()//主函数,计算自然数A到B的和
{
int v1,v2,v3,s;//A=v2,B=v3,s是和
std::cout < < "Calculate the sum of A to B inclusive " < <std::endl;
std::cout < < "Please input A and B: " < <std::endl;
std::cin> > v2> > v3;//输入A,B
v1=v2-1;//求A-1
s=sum(v3)-sum(v1);//引用子程序,计算1到B的和减去1到(A-1)的和
std::cout < < "Sum of " < <v2 < < " to " < <v3 < < " inclusive is " < <s < <std::endl;
return 0;
}
int sum(int k)//求1到k的和
{
int ssum=0,val=1;
while (val <=k){
ssum+=val;
++val;
}
return (ssum);
}
编译时提醒的错误有三个
c1.cpp(9): error C3861: “sum”: 即使使用参数相关的查找,也未找到标识符
c1.cpp(9): error C3861: “sum”: 即使使用参数相关的查找,也未找到标识符
c1.cpp(15): error C2365: “sum” : 重定义;以前的定义是“原先未知的标识符”
[解决办法]
把sum函数提到main函数前面试试。
[解决办法]
把自定义的函数写在main前面,或者在main前面先进行声明。