【C语言C++编程入门】程序的可读性和函数的调用!
一个简单程序的结构
你已经看过一个具体的例子,下面可以了解一些 C程序的基本规则了。
程序由一个或多个函数组成,其中一定有一个名为 main()的函数。函数的描述由函数头和函数体组成。函数头包括预处理语句#include和函数名。可以通过圆括号识别一个函数名。而函数体位于花括号 { }中,并由一系列语句组成,每个语句以一个;结束 。
![](https://upload-images.jianshu.io/upload_images/24175598-d401e0208f6ebc9e.jpg!web?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
一个包含函数头和函数体的函数
上面的例子中包含一个声明语句,指出所使用的变量名和类型。然后是一个赋值语句,给变量赋一个值。接着,是1个输出语句,调用 printf()函数。最后,main()由一个 return 语句结束。
程序的可读性
让程序具有可读性是一个良好的编程习惯。一个可读的程序更易于理解,而且可以更容易地修改它。使程序可读还有助于你自己对程序所做的事情概念更清楚。
前面我们都已经知道了两种提高可读性的技巧:
● 选择有意义的变量名
● 使用注释
请注意这两种技巧的互补性。如果变量名是 width(宽度),就不需要用注释来说明该变量表示宽度,但是如果变量名是 video_routine_4,那么就需要解释一下 video routine 4的具体意义了。
第三个技巧是使用空行分隔一个函数的多个部分。例如,前面那个简单的示例程序就使用一个空行来分隔定义部分和动作部分。 C不要求有这个空行,但它可以增加程序的可读性。
第四个技巧就是每个语句尽量都只用一行。同样,这也是提高可读性的一个约定,而不是 C语言的要求。C的格式比较自由,你可以把多个语句放在一行或把一个语句分成好多行。
下面的语句对于编译器来说是合法的,但是非 常 不好看:
![](https://upload-images.jianshu.io/upload_images/24175598-0dcb310d656b7d4c.jpg!web?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
事实上如果你在公司里写代码如果是这种风格的话,你第二天就会被项目经理辞退,还会狠狠的骂一顿教你C语言的人,虽然他可能不知道是谁教的你C语言!
变量的多个声明
在一个程序中,需要实现的功能越多,那么所定义的变量就会越多,这时候我们通常可以在一个声明语句里声明两个变量。为此,在声明语句中需要用一个逗号把两个变量 分开。也就是说,
int a,b;
和
int a;
int b;
所表达的意思是完全相同的,只是所书写的方式不一样。
![](https://upload-images.jianshu.io/upload_images/24175598-39dc3767bcf4c7d5.jpg!web?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
程序的多个函数
到目前为止,这些程序中只有一个main函数的函数体,那么除了 main()函数之外,怎样把你自己的函数加入到程序中呢。
我们来看看下面的例子
![](https://upload-images.jianshu.io/upload_images/24175598-c7786aae469e9d6b.jpg!web?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
输出应该像下面这样:
![](https://upload-images.jianshu.io/upload_images/24175598-2d9e19b9966e0630.jpg!web?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
hanshuyi( )函数和hanshuer( )函数在上面的程序中出现了 3次。
❀ 第一次出现是在函数声明中,通知编译器后面要用到的该函数。
❀ 第二次是在main()函数中以函数调用的形式出现的。
❀ 最后,程序给出了函数本身的源代码。让我们依次看一下它在程序中的每一次出现。
首先,我们写的hanshuyi()函数的定义方式和 main()是相同的,都是用一个函数头和括在花括号中的函数体。同时,hanshuyi()函数的执行时间由 main()函数调用它的位置决定,而不是由 hanshuyi()在文件中定义的位置决定的。
例如,在本程序中,你可以把 hanshuyi()函数定义在 main()函数的前面,程序的执行不会改变,hanshuyi()函数仍是在两次 printf()调用之间执行的。记住,所有的 C语言程序都是从 main()函数开始执行的,main函数也称之为入口函数,不管它在程序文件中处于什么位置。
![](https://upload-images.jianshu.io/upload_images/24175598-80dbc9fe9240a52e.jpg!web?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
最后我们来看下函数的走向,
✍ 当声明函数之后,我们就进入了主函数,执行第一句printf()函数;
✍ 然后通过简单地给出 hanshuyi()函数的名字在 main()函数中调用该函数;
✍ 当 hanshuyi()执行完毕后,程序会继续执行 main()函数的下一个语句,也就是第二个printf()函数;
✍ 然后再执行hanshuer() ;
✍ 然后执行getchar()函数,防止闪屏;
✍ 最后return结束显示窗口。
学C/C++不易,此路应携手前行。
欢迎关注我的编程公众號【草莓味狸猫】!
如果你想跟着小编一起学编程的话!
可以来我的C语言C++编程学习基地,【点击进入】!
还有(源码,零基础教程,项目实战教学视频)!
![](https://upload-images.jianshu.io/upload_images/19327301-a4a13b8927d105e4.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
【C语言C++编程入门】程序的可读性和函数的调用!的更多相关文章
- Mysql C语言API编程入门讲解
原文:Mysql C语言API编程入门讲解 软件开发中我们经常要访问数据库,存取数据,之前已经有网友提出让鸡啄米讲讲数据库编程的知识,本文就详细讲解如何使用Mysql的C语言API进行数据库编程. ...
- 【C语言C++编程入门】——程序结构:构思!
学习编程语言的最好方法是编写程序.一般来说,初学者编写的第一个程序是一个名为"Hello World"的程序,它简单地将"Hello World"打印到你的电脑 ...
- 【C语言编程入门】Do you know 函数?不知道了吧,我来告诉你!
☆ 函数 在前面我们已经讲过了一些简单的函数,如程序的主函数main().标准输出函数printf().在C语言中,大多数功能都是依靠函数来实现的.But,你知道什么是函数吗?我猜你肯定不知道. 那么 ...
- Windows编程入门程序详解
引用:http://blog.csdn.net/jarvischu/article/details/8115390 1. 程序 /******************************* ...
- 【C语言C++编程入门】——编译机制和语言标准!
编程机制 编写程序时必须遵循确切步骤主要是取决于你的计算机环境.因为 C语言是可以移植的,所以它在许多环境中可用,其中包括 UNIX,Linux,Windows等等 . 不过,让我们首先来看一看许多环 ...
- 【C语言入门教程】5.3 函数的调用 与 参数
函数通过调用获得程序的控制权,函数的参数是调用者与函数的数据接口.函数可以定义一个或多个参数,也可以省略参数,调用时将与参数的数据类型相匹配的数据置于参数列表中,即可在函数体内使用.参数的调用有多种形 ...
- C语言编程入门——程序练习(下)
C语言的一些简单操作练习. 互换两个数字: # include <stdio.h> int main(void) { int i = 3; int j = 5; int t; //将i ...
- C语言编程入门——程序练习(上)
大家能够敲写一下以下的练习代码.看下执行结果,都非常easy.关键要理解. if: # include <stdio.h> int main(void) { int i = 1; i = ...
- 在VC6.0下运行C语言程序,以及编程入门必备的常识类小知识!
今天给大家分享在VC6.0环境下编写C语言程序的基本步骤,为初学者打开学习C语言的第一道门.具体步骤如下(如果需要软件资源,可以留言): 1)新建工作区 依次点击 文件--新建--工作区 或是Ctrl ...
随机推荐
- Windows7上开启ftp服务器功能
开启ftp服务功能 1 进入“控制面板”->“程序”->"打开或关闭Windows功能",找到“Internet信息服务”选项 2 将“Internet信息服务”选 ...
- 下载EXCEL格式设置
1)文本:vnd.ms-excel.numberformat:@2)日期:vnd.ms-excel.numberformat:yyyy/mm/dd3)数字:vnd.ms-excel.numberfor ...
- W5300中文手册
如果链接没了就Q我吧1178875532 链接:https://pan.baidu.com/s/1HcNJN_T6QJCvPWymU1sFDQ 提取码:suBB
- 深度神经网络conda环境下载
介绍 因为使用conda下载数据有时候因为网络问题下载非常慢,因此我把conda的环境备份好,到时可以直接使用conda的conda create -n 新环境名字 –clone 环境的路径 , 直接 ...
- 微信小程序入门到精通[更新版]
微信小程序账号与工具 在线文档:https://mp.weixin.qq.com/debug/wxadoc/dev/ 小程序开发者账号注册 微信公众平台:https://mp.weixin.qq.co ...
- 代码检查工具 Sonar 安装&使用
本文主要说明Sonar的安装方式并附上依赖安装包,本文目标只实现本地搭建测试的Sonar环境,以及本地的测试项目的非定制化扫描 本机测试环境:Win10-X64,.vs2017 依赖包: 1 ...
- pytest封神之路第四步 内置和自定义marker
可以通过命令行查看所有marker,包括内置和自定义的 pytest --markers 内置marker 内置marker本文先讲usefixtures .filterwarnings .skip ...
- 分享一些好用的 Chrome 插件!
使用浏览器扩展程序可以使你的工作效率提高数倍不止,那么下面我就向大家分享一下我日常使用的扩展,可能大多数扩展大家都已经在使用了,不过也难免有一两个是你不知道的. 以下排名并不分先后,请坚持看到最后,或 ...
- 几个超级实用但很少人知道的 VS 技巧[更新]
大家好,今天分享一些实用的 VS 技巧,而这些技巧我发现很多人都不知道.因为我经常在工作中遇到:我在同事电脑上解决问题,或在会议上演示代码示例时,使用了一些 VS "骚"操作,他们 ...
- keepalived+nginx集群
https://blog.csdn.net/l1028386804/article/details/72801492?ops_request_misc=%257B%2522request%255Fid ...