首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何快速学好C语言?快来学习一下其技术特点和内容!

引言

C语言许多年来一直是编程语言中排名前二的语言,学好C语言无疑可以大大的扩展大家的就业空间。这一章节我们就来学习和研究一下C编程语言。

C语言概况

【通用化】

C是一种通用的、程序化的计算机编程语言,支持结构化编程、变量范围限定和递归操作,而它的静态类型系统可以防止很多意外的错误操作。

【支持机器指令】

C语言提供了能有效地使用机器指令的机制,并在以前用汇编语言编码的应用中得到了持久的推广。这些应用包括操作系统和各种计算机的应用软件,从超级计算机到PLC和嵌入式系统。

【起源】

C语言最初是由Dennis Ritchie在1972年至1973年在贝尔实验室开发的,用于开发运行在Unix上的工具程序。

【重写UNIX内核】

后来,它被用于Unix操作系统的内核的重写。

【最广泛使用的编程语言之一】

在20世纪80年代,C语言逐渐普及。目前已经成为应用最广泛的编程语言之一。

不同厂商的C语言编译器已经可以用于大多数现有的计算机体系结构和操作系统。

C语言从1989年起就被美国国家标准学会(ANSI)和国际标准化组织(InternationalOrganization for Standardization)标准化。

【命令式过程】

C语言是一种命令式过程语言。

C语言的编译器相对简单,在最小化的运行时环境的支持下,提供对内存和语言结构的低级访问,这些低级访问可以有效地调用机器指令。

【跨平台编程】

尽管它具有低级的功能,但C语言的设计是为了跨平台编程。

一个符合标准的C语言程序应该在编写时考虑到了可移植性,只需对其源代码进行少量的修改,就可以在各种计算机平台和操作系统上进行编译。

从嵌入式微控制器到超级计算机, C语言可用于各种平台。

【函数】

在C语言中,所有可执行的代码都包含在子程序中,也被称为"函数",虽然严格意义上来说并不是功能编程。

函数的参数总是通过值传递。

在C语言中,通过显式传递指针值来模拟引用传递。

【自由格式】

C语言的程序源代码是自由格式的,用分号作为语句的终结符,用大括号将语句块分组。

【操作符】

C语言支持丰富的操作符集,这些操作符是在表达式中使用的符号,用于指定在评估该表达式时要执行的操作。C语言中的运算符有:

· 算术运算符。+, -, *, /,%

· 赋值: =

· 增强的赋值:+=, -=, *=,/=, %=, &=, |=, ^=, >=

· 位逻辑:~, &, |, ^

· 移位:>

· 布尔逻辑: !, &&,||

· 条件评价: ?

· 相同测试: ==, !=

· 调用函数: ( )

· 增量和减量: ++, --

· 成员选择: ., ->

· 对象大小:sizeof

· 顺序关系:, >=

· 引用和取值: &, *, []

· 顺序:,

· 子表达式分组:( )

· 类型转换:(类型名)

【Hello World例子】

K&R第一版中出现的"hello,World "的例子,已经成为大多数编程教科书中的入门程序的范本。该程序将"hello,World"打印到标准输出。

最初的版本是:

main()

{

printf("hello, world\n");

}

一个符合标准的Hello World程序:

#include

int main(void)

{

printf("hello, world\n");

}

【数据类型】

C语言的类型系统是静态的、弱类型化的,这点上与ALGOL后裔如Pascal等的类型系统类似。

对于整数类型:

· 有符号和无符号的整数。

· 浮点数。

· 枚举类型(enum)类型。

· 整数类型char常用于单字节字符。

· C99增加了一个布尔数据类型。

还有派生类型包括数组、指针、记录(struct)和联合(union)。

【指针】

C语言支持使用指针,指针是一种记录对象或函数在内存中的地址或位置的引用类型。

1. 指针可以用来访问存储在所指向的地址上的数据,或者调用指向的函数。

2. 指针可以使用赋值或指针运算来操作。

3. 指针通常是一个原始的内存地址,但是由于指针的类型包括了被指向的事物的类型,所以在编译时可以对使用指针在的表达式进行类型检查。

4. 指针算术会根据指向的数据类型的大小自动调整。

5. 通常使用指针将字符串当成字符数组操作。

等等......

路还挺长的,一步一步走完,是你现在最应该做的!

附:小编正在建设中的编程公众号【草莓味狸猫】

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20200521A0CQFQ00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券
http://www.vxiaotou.com