分享

话题

 Zsy20151225 2017-02-28

一个简单程序的结构


        你已经看过一个具体的例子,下面可以了解一些 C程序的基本规则了。程序由一个或多个函数组成,其中一定有一个名为 main()的函数。函数的描述由 函数头 和 函数体 组成。函数头包括预处理语句#include和函数名。可以通过圆括号识别一个函数名。而函数体位于花括号 { } 中,并由一系列语句组成,每个语句以一个;结束 。


1851000041ff554793d2

一个包含函数头和函数体的函数


        上面的例子中包含一个声明语句,指出所使用的变量名和类型。然后是一个赋值语句,给变量赋一个值。接着,是1个输出语句,调用 printf()函数。最后,main()由一个 return 语句结束。

 

程序的可读性


        让程序具有可读性是一个良好的编程习惯。一个可读的程序更易于理解,而且可以更容易地修改它。使程序可读还有助于你自己对程序所做的事情概念更清楚。

        前面我们都已经知道了两种提高可读性的技巧:

  1. 选择有意义的变量名

  2. 使用注释

            请注意这两种技巧的互补性。如果变量名是 width(宽度),就不需要用注释来说明该变量表示宽度,但是如果变量名是 video_routine_4,那么就需要解释一下 video routine 4的具体意义了。

        第三个技巧是使用空行分隔一个函数的多个部分。例如,前面那个简单的示例程序就使用一个空行来分隔定义部分和动作部分。 C不要求有这个空行,但它可以增加程序的可读性。

        第四个技巧就是每个语句尽量都只用一行。同样,这也是提高可读性的一个约定,而不是 C语言的要求。C的格式比较自由,你可以把多个语句放在一行或把一个语句分成好多行。

下面的语句对于编译器来说是合法的,但是 非 常 不 好看:

 18510000480168291382

请点击此处输入图片描述


        事实上如果你在公司里写代码如果是这种风格的话,你第二天就会被项目经理辞退,还会狠狠的骂一顿教你C语言的人,虽然他可能不知道是谁教的你C语言!


变量的多个声明


        在一个程序中,需要实现的功能越多,那么所定义的变量就会越多,这时候我们通常可以在一个声明语句里声明两个变量。为此,在声明语句中需要用一个逗号把两个变量 分开。也就是说,

          int  a,b;

          int a;

          int b;

所表达的意思是完全相同的,只是所书写的方式不一样。


17f00005da1dacb64df3

请点击此处输入图片描述



程序的多个函数


        到目前为止,这些程序中只有一个main函数的函数体,那么除了 main()函数之外,怎样把你自己的函数加入到程序中呢。

我们来看看下面的例子

185200005a0c770e414b



  输出应该像下面这样:


17f3000467ea9bcb9fb0



        hanshuyi()函数和hanshuer()函数在上面的程序中出现了 3次。

            第一次出现是在函数声明中,通知编译器后面要用到的该函数。

            第二次是在main()函数中以函数调用的形式出现的。

           最后,程序给出了函数本身的源代码。让我们依次看一下它在程序中的每一次出现。


        首先,我们写的hanshuyi()函数的定义方式和 main()是相同的,都是用一个函数头和括在花括号中的函数体。同时,hanshuyi()函数的执行时间由 main()函数调用它的位置决定,而不是由 hanshuyi()在文件中定义的位置决定的。       

        例如,在本程序中,你可以把 hanshuyi()函数定义在 main()函数的前面,程序的执行不会改变,hanshuyi()函数仍是在两次 printf()调用之间执行的。记住,所有的 C语言程序都是从 main()函数开始执行的,main函数也称之为入口函数,不管它在程序文件中处于什么位置。

        最后我们来看下函数的走向,当声明函数之后,我们就进入了主函数,执行第一句printf()函数,然后通过简单地给出 hanshuyi()函数的名字在 main()函数中调用该函数。当 hanshuyi()执行完毕后,程序会继续执行 main()函数的下一个语句,也就是第二个printf()函数,然后再执行hanshuer() ,然后执行getchar()函数,防止闪屏,最后return结束显示窗口。


如果可以的话,请大家多多转发关注,谢谢支持!

想要学习交流的小伙伴可以申请加群!群号:564950050

同时也可以关注我们的微信公众号:【轻松学C语言】



    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多