c语言中函数名前加*与不加*有什么区别

 我来答
百度网友96da07b5f58
2020-01-08 · TA获得超过4017个赞
知道大有可为答主
回答量:3148
采纳率:27%
帮助的人:386万
展开全部
可以说加不加int是没有区别的。在ansi
c的标准中,main的标准返回值是整型,如果你什么都没有加,编译系统会自动加上int类型的。这时如果你使用gcc的话(vc是没有的)会有一个警告。
void是无类型,表示没有返回值,你的主函数如果不需要返回的话,最好加上它。
最后,建议你的主函数显式的使用int类型,并return
0;这是一个好习惯,开始的时候没什么用,时间长了才能看出来。
timetraver
推荐于2017-10-15 · TA获得超过273个赞
知道小有建树答主
回答量:151
采纳率:0%
帮助的人:146万
展开全部
加*是返回指针
例如:
int add();//add()函数返回的是一个int类型的值
int* add();//add()函数返回的是一个int类型的指针
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2010-06-18
展开全部
加*的表示函数指针,可以指向一个函数的地址,然后再调用函数。
书上都有,你可以去找找
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
L_o_o_n_i_e
2010-06-18 · TA获得超过4.2万个赞
知道大有可为答主
回答量:8507
采纳率:38%
帮助的人:5255万
展开全部
函数原型声明和定义中, 函数名前加 * 的表示返回值是指针。
例如标准库函数gets():
char *gets ( char *str );
从键盘读入一行字符串,如果读入成功,返回值与str 里 的 字符串相同。

--------------
int (*p)(); 这种声明是“定义 p 是一个指向函数的指针变量,此函数带回整型的返回值。”例如:
int max(int,int); //函数原型声明
int min(int,int); //函数原型声明
int (*p)();
int a,b,c;
p=max; // 将函数 max 的入口地址赋给指针变量p
scanf("%d,%d",&a,&b);
c=(*p)(a,b); // 等于 调用 c=max(a,b);
printf("a=%d,b=%d,max=%d",a,b,c);
p=min; // 将函数 min 的入口地址赋给指针变量p
c=(*p)(a,b); // 等于 调用 c=min(a,b);
printf("a=%d,b=%d,min=%d",a,b,c);
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式