C语言介绍

C语言诞生于美国贝尔实验室,它是由Denis Richie在1968~ 1973年间使用B语言开发Unix系统过程中发展而来的。

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

由于其底层功能,C语言取代了汇编语言。它是与程序员和机器最接近的唯一高级语言,你不需要像汇编语言一样,记那些晦涩难懂的指令就可以轻松地进行编程。

由于C语言的流行,1989年已被ANSI和ISO标准化.C ++,Java,C#,PHP,Python等许多语言直接或间接地从C语言借用。

C语言发展历程

随着时间的发展,C语言逐渐成为一种越来越强大的语言,它的许多特性得到了改进,同时添加了一些新的功能。C语言的发展主要分为以下几个阶段:

K&R C

C语言的第一个版本是Brian K ernighan和Dennis Ritchie 联合出版的《The C Programming Language》。此版本以其姓氏字母“ K&R”而闻名。

功能包括:

  1. 标准I / O库
  2. long int和unsigned int数据类型
  3. 为确保语句的确切操作,赋值形式由"=op(= +)"更改为"op =(+ =)"。例如:
x =-10 可能会被认为是 x = -10
因此,为了使语义更清晰,K&R C将其改为"x -= 10".

4.在函数原型声明中,k&R C编译器不执行参数验证。

#include<stdio.h> 

float add (float arg1, float arg2); //function prototype
int main() 
{ 
    float sum; sum= add(4,5); //calling function pass integer value 
} 

/*function definition*/
float add (int arg1,int arg2)  /*definition accept integer argument*/ 
{ 
    return (arg1+arg2);
}
  1. 输出: 声明和定义参数不同时,K&R C编译器不会给出任何错误。具有非整数返回类型的唯一函数需要声明。

2. ANSI C

在接下来的几年中,新增了许多新的功能,例如添加由不同供应商提供的void,struct,union和枚举数据类型。此附加功能导致在标准库上缺乏一致性。

由于此时C语言受欢迎程度大大增加,ANSI组成了制定C标准规范的委员会。1989年ANSI发布了C的第二个批准版本《Programming Language C》(也称为ANSI C / C89)。1990年ANSI C标准被ISO采用,也称为C89或C90。

功能包括:

  1. void指针
  2. 函数指针
  3. 支持国际字符集和部分地区字符集等

3. C99

ISO C90于1999年进行了修订,并命名为“ C99”。

功能包括:

  1. 内联功能
  2. 像long long int这样的数据类型以及表示复数的复数数据类型。
  3. 支持可变长度数组
  4. 一行注释等

4. C11

此版本于2011年修订完成。

功能包括:

  1. 改善与C ++的兼容性
  2. 限制对新功能的采用,直到不使用现有功能进行测试。
  3. 库中添加类型通用宏,多线程和匿名结构等。

5.嵌入式C

为了满足嵌入式应用需求,C语言做了一些非标准功能,使它能够支持嵌入式系统。

功能包括:

  1. 定点算法
  2. 支持多种存储介质
  3. 基本的I / O操作。

为什么要学习C语言?

并非所有程序员都必须学习C语言,C语言学习完全取决于您的需求,但如果你是编程新手,我还是会建议你先学习C语言。

C语言学习会使你对其他语言有更深的了解,因为几乎每种语言都直接或间接采用了C的某些功能。如果你打算学习C++或嵌入式C,那么,请先好好打好C语言基础吧。

C语言的未来

C语言的未来永远不会结束,因为每种语言的基础都是C语言。适用于所有平台的操作系统,编译器编写,微控制器编程,设备驱动程序编程以及所有固件编程都是用C语言编写的,所以我认为C语言将会青春永驻!

下一节