标题:新人刚学习C,请教大家一个问题
只看楼主
LinMax
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2015-4-3
 问题点数:0 回复次数:3 
新人刚学习C,请教大家一个问题
# include <stdio.h>

void butler(void);
int main(void)
{
    printf("I will summon the butler function.\n");
    butler();
    printf("Yes, Being me some tea and writeable CD-ROMS.\n");
    return 0;
}

void butler(void)
{
    printf("You rang, sir?\n");
}
为什么第一个void butler(void)有分号而下面的没有分号
搜索更多相关主题的帖子: return include function 
2015-04-03 16:56
code力力
Rank: 5Rank: 5
来 自:宜昌
等 级:职业侠客
威 望:2
帖 子:215
专家分:338
注 册:2015-1-12
得分:0 
第一个是声明函数,就是告诉编译器:你在编译的时候,看到butler()这个东东,不要报错啊,他是我写的一个函数。

第二个就是你定义的函数原型,是你写的函数诞生的地方。

若果你不声明,编译器按顺序从上往下编译,它首先会看到butler()这个东东,但是编译器不知道这个是什么玩意儿,就会报错。

若果你把定义的函数原型写在main上面,就不需要声明了。

你醒了?快起来敲代码!!
2015-04-03 17:27
LinMax
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2015-4-3
得分:0 
回复 2楼 code力力
谢谢,苦恼了半天,查也查不到。。
2015-04-03 17:35
code力力
Rank: 5Rank: 5
来 自:宜昌
等 级:职业侠客
威 望:2
帖 子:215
专家分:338
注 册:2015-1-12
得分:0 
书上有的,只是你没看懂。多理解理解

你醒了?快起来敲代码!!
2015-04-03 17:48



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-443511-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015995 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved