C语言是什么?

给别人提起 C语言,可能会有下面的疑问?
现在都是什么社会了,还有必要学习C语言吗?
只要明白C语言是什么?那我们就搞明白了,为什么学习C语言了?
那究竟什么是C语言呢?

Mother language
C语言被认为是所有现代编程语言的母语言,因为大多数编译器、JVM、内核等都是用C语言编写的,而且大多数编程语言都遵循C语言的语法,例如,C++、Java、C#等。
它提供了核心概念,如数组、字符串、函数、文件处理等,这些概念在许多语言中都被使用,如C++、Java、C#等。
System programming language
系统编程语言是用来创建系统软件的。C语言是一种系统编程语言,因为它可以用来做低级别的编程(例如,驱动程序和内核)。它通常被用来创建硬件设备、操作系统、驱动程序、内核等。例如,Linux内核是用C语言编写的。它不能用于互联网编程,例如Java, php等。
Procedure-oriented programming language
过程被称为函数、方法、例程、子程序等。过程式语言规定了程序解决问题的一系列步骤。过程式语言将程序分成函数、数据结构等。C语言是一种过程式语言。在C语言中,变量和函数原型在使用前必须先声明。
Structured programming language
结构化编程语言是程序化语言的一个子集。结构化是指将程序分成若干部分或块,使其易于理解。在C语言中,我们用函数将程序分成几个部分。它使程序更容易理解和修改。
Mid-level programming language
C语言被认为是一种中级语言,因为它同时支持低级和高级语言的特点。C语言程序被转换为汇编代码,它支持指针运算(低级),但它是独立于机器的(高级的特征)。
低级语言是特定于一台机器的,即依赖于机器。它依赖机器,运行速度快。但它不容易理解。
高级语言不特定于一台机器,即机器独立。它很容易理解。
网上流传一个传说:汇编生C语言,C语言生万物。