教你快速了解C语言基本结构

0bb4f2877700dc48563e3616e91005d5.png

点击上方蓝字关注我,了解更多咨询

e31690aab624a7d0fc4b528e25006242.png

在步入C语言程序世界之前,不要对C语言产生恐惧感,觉得这种语言应该是学者或研究人员的专利。C语言是人类共有的财富,是普通人只要通过努力学习就可以掌握的知识。下面通过一个简单的程序来看一看C语言程序是什么样子。

【例1.1】 一个简单的C程序。

本实例程序实现的功能只是显示一条信息“Hello, world! I'm coming!”,通过这个程序可以初窥C程序样貌。虽然这个简单的小程序只有7行,却充分说明了C程序是由什么位置开始、什么位置结束的。

9af0702105d0abbc6d7a45f6d2742b77.png

运行程序,显示效果如图1.1所示。

6a9fb85d276957512d0fdabbd1139a67.png

现在来分析一下上面的实例程序。

1.#include指令

实例代码中的第1行:

#include<stdio.h>

这个语句的功能是进行有关的预处理操作。include称为文件包含命令,后面尖括号中的内容称为头部文件或首文件。。

2.空行

实例代码中的第2行是空行。

C语言是一个较灵活的语言,因此格式并不是固定不变、拘于一格的。也就是说,空格、空行、跳格并不会影响程序。有的读者就会问:“为什么要有这些多余的空格和空行呢?”其实这就像生活中在纸上写字一样,虽然拿来一张白纸就可以在上面写字,但是通常还会在纸的上面印上一行一行的方格或段落,隔开每一段文字,自然就更加美观和规范。合理、恰当地使用这些空格、空行,可以使编写出来的程序更加规范,对日后的阅读和整理发挥着重要的作用。在此也提醒读者,在写程序时最好将程序书写得规范、干净。

注意:不是所有的空格都没有用,如两个关键字之间要用空格隔开(else if)。这种情况下如果将空格去掉,程序就不能通过编译。

3.main函数声明

实例代码中的第3行:

int main()

这一行代码代表的意思是声明main函数为一个返回值,是整型的函数。其中的int称为关键字,这个关键字代表的类型是整型。

在函数中,这一部分称为函数头部分。在每个程序中都会有一个main函数,那么main函数是什么作用呢?main函数就是一个程序的入口部分。也就是说,程序都是从main函数头开始执行的,然后进入main函数中,执行main函数中的内容。

4.函数体

实例代码中的第4~7行:

在上面介绍main函数时,提到了一个名词—函数头。读者通过这个词可以进行一下联想:既然有函数头,那也应该有函数的身体吧。没错,一个函数分为两个部分:一是函数头,一是函数体。

程序代码中的第4行和第7行这两个大括号就构成了函数体,函数体也可以称为函数的语句块。在函数体中,也就是第5行和第6行这一部分就是函数体中要执行的内容。

5.执行语句

函数体中的第5行代码:

执行语句就是函数体中要执行的动作内容。这一行代码是这个简单的例子中最复杂的。该行代码虽然看似复杂,其实也不难理解,printf是产生格式化输出的函数,可以简单理解为向控制台进行输出文字或符号。括号中的内容称为函数的参数,在括号内可以看到输出的字符串“Hello, world! I'm coming!”,其中还可以看到“\n”这样一个符号,称之为转义字符。

6.return语句

函数体中的第6行代码:

return 0;

这行语句使main函数终止运行,并向操作系统返回一个整型常量0。前面介绍main函数时说过返回一个整型返回值,此时0就是要返回的整型值。在此处可以将return理解成main函数的结束标志。

7.代码的注释

在程序的第5行和第6行后面可以看到一段关于这行代码的文字描述:

这段对代码的解释描述称为代码的注释。代码注释就是用来对代码进行解释说明,方便日后自己阅读或者他人阅读源程序时理解程序代码的含义和设计思想。其语法格式如下:

/*其中为注释内容*/

说明:虽然没有强行规定程序中一定要写注释,但是为程序代码写注释是一个良好的习惯,这会为以后查看代码带来非常大的方便。如果程序交给别人看,他人可以快速地掌握程序思想与代码作用。因此,编写规范的代码格式和添加详细的注释,是一个优秀程序员应该具备的好习惯。

fa5690e45dac9d9b7b30d8149f550aba.png

END

*声明:本文于网络整理,版权归原作者所有,如来源信息有误或侵犯权益,请联系我们删除或授权事宜。

518ea3f676ce7fbf0be532fea1aa2bd7.png

4789ee80db6da3e7643a7f21c7670cf2.gif

戳“阅读原文”我们一起进步

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/337959.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

提高mysql insert速度_让你的insert操作速度增加1000倍的方法

大家平时都会使用insert语句,特别是有时候需要一个大批量的数据来做测试,一条一条insert将会是非常慢的,那么我们如何让我们的inser更快呢。很多时候方法选对了对于我们做事将会是事半功倍。大家平时都会使用insert语句,特别是有时候需要一个大批量的数据来做测试,一条一条inse…

C语言中同名变量,作用域怎么确定?

点击上方蓝字关注我&#xff0c;了解更多咨询C中通常会声明很多变量&#xff0c;变量有不同的作用域。如果出现同名变量&#xff0c;作用域怎么确定&#xff1f;这里先看结论&#xff1a;块中的变量作用域不同&#xff0c;内层块会隐藏外层块中的定义。但离开内层块后&#xff…

C语言基础知识干货收藏

点击上方蓝字关注我&#xff0c;了解更多咨询算法结构&#xff1a;一、顺序结构、选择结构、循环结构&#xff1b;二、循环结构又分为while型、until型、for循环结构&#xff1b;程序流程图&#xff1b;结构化程序设计方法&#xff1a;&#xff08;1&#xff09;自顶向下&#…

python xlrd读取文件报错_python中xlrd库如何实现文件读取?

俗话说得好&#xff0c;技多不压身&#xff0c;虽然我们已经掌握了多种可以实现读取文件的方式&#xff0c;但是丝毫不影响我们要学会精益求精&#xff0c;他说学习文件读取的奥秘&#xff0c;况且&#xff0c;数据分析是十分重要的&#xff0c;一切的代码运行&#xff0c;总归…

c语言 %x,%d,%c,%s,%x各代表什么

点击上方蓝字关注我&#xff0c;了解更多咨询转换说明符%a(%A) 浮点数、十六进制数字和p-(P-)记数法(C99)%c 字符%d 有符号十进制整数%f 浮点数(包括float和doulbe)%e(%E) 浮点数指数输出[e-(E-)记数法]%g(%G) 浮点数不显无意义的零”0″%i 有符号十进制整数(与%d相同)%u 无符号…

apache mesos_Apache Mesos + Marathon和Java EE

apache mesosApache Mesos是一个开放源代码群集管理器&#xff0c;可在分布式应用程序或框架之间提供有效的资源隔离和共享。 Apache Mesos从计算机&#xff08;物理或虚拟&#xff09;中提取CPU&#xff0c;内存&#xff0c;存储和其他计算资源&#xff0c;从而使容错和弹性的…

C语言表达式用法快来看看

点击上方蓝字关注我&#xff0c;了解更多咨询表达式是C语言的主体。在C语言中&#xff0c;表达式由操作符和操作数组成。最简单的表达式可以只含有一个操作数。根据表达式所含操作符的个数&#xff0c;可以把表达式分为简单表达式和复杂表达式两种&#xff0c;简单表达式是只含…

python导入模块报错_Python 导入上层目录模块报错

背景&#xff1a;当前demo.py 文件&#xff0c;所处目录 D:\py\test\TestCase&#xff0c;需要调用test 目录下的模块&#xff0c;尝试了 新建__init__.py 文件 import test.模块名的方法&#xff0c;无效.报错信息&#xff1a;D:\py\test\TestCase>python demo.pyTraceback…

java int 传引用吗_Java的参数传递是「值传递」还是「引用传递」?

关于Java传参时是引用传递还是值传递&#xff0c;一直是一个讨论比较多的话题。有人说Java中只有值传递&#xff0c;也有人说值传递和引用传递都是存在的&#xff0c;比较容易让人产生疑问。关于值传递和引用传递其实需要分情况看待。一、Java数据类型我们都知道&#xff0c;Ja…

C语言中变量的存储类别

点击上方蓝字关注我&#xff0c;了解更多咨询在程序中经常会使用到变量&#xff0c;在C程序中可以选择变量的不同存储形式&#xff0c;其存储类别分为静态存储和动态存储。可以通过存储类修饰符来告诉编译器要处理什么样的类型变量&#xff0c;具体主要有自动&#xff08;auto&…

javafx 项目_JavaFX,Jigsaw项目和JEP 253

javafx 项目因此&#xff0c; Java 9可能会破坏您的代码 …… 如果您的项目使用JavaFX&#xff0c;则这尤其可能&#xff0c;因为许多自定义和自制控件都需要使用内部API。 借助Project Jigsaw&#xff0c;这些内容将无法在Java 9中访问。幸运的是&#xff0c; Oracle在几天前…

C语言结构体用法很多,坑也很多

点击上方蓝字关注我&#xff0c;了解更多咨询还在使用89年版C语言的Linux内核&#xff0c;现在终于要做出改变了。今天&#xff0c;Linux开源社区宣布&#xff0c;未来会把内核C语言版本升级到C11&#xff0c;预计5.18版之后生效&#xff0c;也就是今年5月。这个决定很突然&…

java 消息队列服务_ActiveMQ 消息队列服务

1 ActiveMQ简介1.1 ActiveMQ是什么ActiveMQ是一个消息队列应用服务器(推送服务器)。支持JMS规范。1.1.1 JMS概述全称&#xff1a;Java Message Service &#xff0c;即为Java消息服务&#xff0c;是一套java消息服务的API标准。(标准即接口)实现了JMS标准的系统&#xff0c;称之…

第一个C语言编译器是怎样编写的?

点击上方蓝字关注我&#xff0c;了解更多咨询以我们嵌入式开发中经常使用的C语言为例&#xff0c;我们来介绍一下第一个C语言编译器的来源。还是让我们回顾一下C语言历史&#xff1a;1970年Tomphson和Ritchie在BCPL&#xff08;一种解释型语言&#xff09;的基础上开发了B语言&…

C语言fgets()函数:以字符串形式读取文件

点击上方蓝字关注我&#xff0c;了解更多咨询C语言 fgets() 函数从文本文件中读取一个字符串&#xff0c;并将其保存到内存变量中。fgets() 函数位于 <stdio.h> 头文件中&#xff0c;其使用格式如下&#xff1a;fgets(字符串指针,字符个数n,文件指针);格式说明&#xff1…

摆脱冷气_摆脱匿名类

摆脱冷气我真的很喜欢编写和阅读lambda表达式-它们简洁&#xff0c;富于表现力和时尚&#xff08;来吧&#xff0c;这样就没关系了&#xff01;&#xff09;。 将此与匿名类进行比较。 这就是为什么我喜欢摆脱它们&#xff01; 在过去的几个月里&#xff0c;这种认识慢慢地实现…

深入了解C语言

点击上方蓝字关注我&#xff0c;了解更多咨询c语言在编程语言中是偏底层的语言&#xff0c;像JavaScript&#xff0c;以及java。都是在c语言的基础上编译出来的。像操作系统&#xff1a;unix &#xff0c;linux &#xff0c;windows都是依靠c语言开发出来的&#xff0c;使用c语…

C语言函数注意点有哪些?

点击上方蓝字关注我&#xff0c;了解更多咨询构成C程序的基本单位是函数 C语言程序是由函数构成的&#xff0c;不存在过程。函数名代表该函数的入口地址C语言函数可以嵌套调用&#xff0c;例如&#xff1a;fun(fun(x)) &#xff1b;于C语言中&#xff0c;子程序的…

C语言中的逻辑值

点击上方蓝字关注我&#xff0c;了解更多咨询C语言中的逻辑值1.C语言中的逻辑值2.逻辑运算符的运算规律3.逻辑值的举例说明一&#xff0e;C语言中的逻辑值逻辑值即逻辑运算操作的结果。在C语言中&#xff0c;逻辑运算包括关系运算与逻辑运算。关系运算包括大于(>),小于(<…

java page size_java ducument.pagesize.a2打印时用a4可以吗

展开全部概述Document是itext的基础&#xff0c;你可以添加文档数据(用户阅读62616964757a686964616fe58685e5aeb931333339666161的信息)和元数据(pdf内部使用的信息)。在创建document对象时&#xff0c;你可以定义page size&#xff0c;page color and page margins。构造函数…