这个程序c++有几个问题,见注释!
#include<stdio.h>intmain(){intage(intn);printf("%d",age(5));/intage(intn)这个只是申明,没有定义a...
#include <stdio.h>
int main ()
{
int age(int n);
printf ("%d",age(5));/int age(int n)这个只是申明,没有定义age(n),为什么可以输出age(5)呢?/
}
int age(int n)
{
int c;
if(n==1)
c=10;
else
c=age(n-1)+2;
return c;
} 展开
int main ()
{
int age(int n);
printf ("%d",age(5));/int age(int n)这个只是申明,没有定义age(n),为什么可以输出age(5)呢?/
}
int age(int n)
{
int c;
if(n==1)
c=10;
else
c=age(n-1)+2;
return c;
} 展开
展开全部
因为你在下面定义了啊,
调用函数只要声明就可以了,对于函数你可以在后面,前面定义都没问题的,但是一定要定义,否则link error
调用函数只要声明就可以了,对于函数你可以在后面,前面定义都没问题的,但是一定要定义,否则link error
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
声明和定义可以分开。如果定义在main调用前,可以直接调用无需单独声明;如果定义在调用之后,调用前必须先声明!
int age(int n)是递归函数
int age(int n)是递归函数
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
下边的函数不就是age(int n)的定义吗?在main函数中声明,mian外实现而已,
main运行时遇到age(5),调用age函数··
main运行时遇到age(5),调用age函数··
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-05-06
展开全部
申明就是说从这里开始遇到age(int n),就是main下面定义的函数。遇到age(5)就会自动代入计算
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
C/C++都是先声明后调用的啦,在调用的时候才会去寻找函数定义的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询