我曾跟大家讲过,为了使零基础的朋友们能够入门,我们一点一滴地去讲c语言的每一个知识点,咱们每天进步一点点,几个月后,你就会掌握c这门程序设计语言。
c语言程序文件内容大致可以分为四个部分——头文件的引用、类型定义、全局变量定义和宏定义、函数声明、函数的实现。这四个部分并不是必须全部存在的,需要根据实际需求来确定。比如我的c文件里用不到任何全局变量,那自然我就不需要定义全局变量。
上图是一个c语言程序文件,其第1行到第3行是头文件的引用,第5行和第6行是变量定义,第7行是函数的声明。第9行到第25行是main函数和test函数的实现。
下面我们来认识一下函数。上图中我们对函数有了直观的认识,像main和test这样能实现某个或某些功能的代码段称为函数。我们把上图加上标注,看看函数由哪几部分组成。
图上标注的是test函数的各个部分名称,朋友们能自己说出main函数的各个部分名称吗?
值得解释一下的是函数的参数。参数是可有可无的,参数个数也是不确定的,需要根据实际情况来确定要不要给函数设计参数和设计几个参数。不同参数之间用逗号分隔,像上图中的test函数就有两个参数,第1个参数是int型,第2个参数是char *型,而main函数没有参数,没有参数的情况参数位置用void表示。函数定义中的参数叫做形参,形参告诉我们调用它时传入几个参数,每个参数传入什么类型的数据。比如test函数的第一个参数是int型的,如果我们调用它时第一个参数传入的不是int型数据,那编译的时候编译器就会报错,也就是编译不通过。调用函数时传入的参数叫做实参,main函数调用test函数时传入的变量current_id和name_str都是实参。
那么test函数必须要被main函数调用吗?我们把我们想要的功能都在test函数里实现,不要main函数了行不行?这里告诉朋友们,那是绝对不行的。即使test函数里实现了所有我们想要的功能,也是需要被main函数直接或者间接调用的。我们所举例子中main函数是直接调用test函数的,那么什么是间接调用?比如test函数被另一个函数test1调用了,main函数调用了test1函数,也就间接调用了test函数。
为什么所有的函数都需要直接或者间接被main函数调用呢?没有为什么,就是这么规定的。c语言程序必须从main函数开始执行。也就是说,你编写的所有函数中,必须有个函数名字叫main。如果你想实现一个功能有两个选择,一是直接在main函数里实现你的功能,二是新定义一个函数来实现你的功能,然后用main函数调用这个函数。
怎么样?朋友们是不是对c语言的函数有点感觉了呢?
-
C语言
+关注
关注
180文章
7605浏览量
136984 -
函数
+关注
关注
3文章
4333浏览量
62684
发布评论请先 登录
相关推荐
评论