C语言学习(1)-初识C语言、第一个C语言程序

C语言学习(1)-初识C语言、第一个C语言程序,第1张


一、初识C语言

C语言是一门通用计算机编程语言,广泛应用于底层开发。


C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持能运行的编程语言。


1.1 C语言的起源

1972年,贝尔实验室的丹尼斯.里奇(Dennis Ritch)和肯.汤普逊(Ken Thompson)在开发UNIX *** 作系统时,在B语言(汤普逊发明)的基础上发明了C语言。


1.2 C语言的优点

C是一门流行的语言,融合了计算机科学理论和实践的控制特性。


C语言的设计理念让用户能轻松地完成自顶向下的规划、结构化编程和模块化设计。


因此,C语言编写的程序更易懂、更可靠

高效性——C是一种高效的语言。


C语言具有通常是汇编语言才具有的微调控制能力,可以根据具体情况微调程序以获得最大运行速度或有效地使用内存。


因此,C程序相对更紧凑,而且运行速度很快。


可移植性 ——C是可移植的语言。


这意味着,在一种系统中编写的C程序稍作修改或不修改就能在其他系统上运行。


如需修改,也只需要简单更改主程序头文件中的少许项即可。


强大而灵活——C语言的功能强大且灵活。


例如,UNIX *** 作系统大部分是用C语言写的;其他语言(如 Python、BASIC、FORTRAN)的许多编译器和解释器都是用C语言编写的;C语言还可以用来解决物理学和工程学的问题,甚至可以用于制作电影的动画特效。


面向程序员——C语言是为了满足程序员的需求而设计的,程序员利用C可以访问硬件、 *** 作内存中的位。


C语言具有丰富的运算符,能让程序员简洁地表达自己的意图。


而且,大多数C实现都有一个大型的库,包含众多有用的C函数。


这些函数用于处理程序员经常需要解决的问题。


1.3 C语言标准

二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准协会(ANSI)为C语言制定了一套完整的美国国家标准语法,称为ANSI C,作为C语言最初的标准。


目前2011年12月8日,国际标准化组织(ISO)和国际电工委员会(IEC)发布的C11标准是C语言的第三个官方标准,也是C语言的最新标准,该标准更好的支持了汉字函数名和汉字标识符,一定程度上实现了汉字编程。



二、第一个C语言程序

#include                      //#include指令和头文件

int main(void)                            //main函数是程序的入口,一个工程中有且仅有一个main函数
{
	printf("hello, C语言\n");        //在屏幕中打印出 hello, C语言 这句话
	return 0;                        //main函数返回值 
}
2.1.#include 指令和头文件
#include  

这是程序的第一行。


其作用相当于把stdio.h文件中的所有内容都输入该行所在的位置。


实际上,这是一种“拷贝-粘贴”的 *** 作。


#include这行代码是一条C预处理指令。


所谓预处理,通常是指C编译器在编译前对源代码做的一些准备工作。


所有的C编译器软件包都提供 stdio.h 文件。


该文件中包含了供编译器使用的输入和输出函数(如printf()函数)的信息。


该文件名的含义是标准输入/输出头文件。


通常,在C程序顶部的信息集合被称为头文件(hender)。


在大多数情况下,头文件包含了编译器创建最终许可执行程序要用的信息。


例如,头文件中可以定义一些常量,或者指明函数名以及如何使用它们。


但是,函数的实际代码在一个预编译代码的库文件中。


简而言之,头文件帮助编译器把你的程序正确地组合在一起。


2.2 main()函数
int main(void)  

main()函数是程序的入口,一个工程中有且仅有一个main()函数。


圆括号的作用则是用于识别main()。


int是main()函数的返回类型。


这表明main()函数返回的值是整数。


返回到哪里?返回给 *** 作系统。


通常,函数名后面的圆括号中包含一些传入函数的信息。


但在该例子中没有传递任何信息。


因此,圆括号内是单词void,该单词含义表示为空类型。


2.3 花括号、函数体和块
{
    ...
}

花括号把main()函数括起来。


一般而言,所有的C函数都使用花括号标记函数体的开始和结束。


这是规定,不能省略。


只有花括号({ })能起到这种作用,圆括号(( ))和方括号([ ])都不行。


花括号还可用于把函数中的多条语句合并为一个单元或块。


2.4 printf()函数
printf("hello, C语言\n");  

printf()是C语言的一个标准函数,该函数会查看双引号中的内容,并将其打印在屏幕上,如下图所示。




圆括号表明printf是一个函数名,而圆括号中的内容是从main()函数传递给printf()函数的信息。


这行代码把 hello, C语言\n 传递给printf()函数,hello, C语言\n 这句话在这行代码中也被称为函数的参数。


在上图中我们可以看到屏幕上只打印了 hello, C语言 这句话,printf()函数的双引号中的\n并未输出,原因是\n的意思是换行,即在下一行的最左边开始新的一行,因此\n这两个字符结合成的组合又被称为换行符,打印换行符的效果与在键盘上按下Enter键相同。


换行符是一个转义序列。


转义序列用于代表难以表示或无法输入的字符。


其他转义字符可参照下表,每个转义字符都以反斜杠字符(\)开始。



2.5 return 语句
return 0;

在2.2main()函数中我们讲到,int main(void) 中的int表明main()函数应返回一个整数。


C标准要求main()这样做。


有返回值的C函数要有return语句。


该语句以return关键字开始,后面是待返回的值,并以分号结尾。


如果遗漏main()函数中的return语句,程序在运行至最外面的右花括号(})时依然会返回0。


因此,可以省略main()函数中的return语句。


但是,不要在其他有返回值的函数中漏掉它。


因此,强烈建议读者养成在main()函数中保留return语句的好习惯。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/563983.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-03
下一篇 2022-04-03

发表评论

登录后才能评论

评论列表(0条)

保存