C语言概述

来源:互联网 发布:windows生物识别系统 编辑:程序博客网 时间:2024/05/23 01:56
C语言概述
    

      1. 嵌入式开发为什么会选择C语言?

      答这个问题前,我们首先要先解决两个问题?第一,嵌入式开发需要考虑到哪些问题?第二,C语言相对于其它高级语言有什么特点?

      第一,嵌入式的开发,需要考虑三个方面,1.性能。 2.安全性。 3.开发效率。(包括代码的可移植性)

      第二,C语言有三大特点。 1.出色的可移植性 。 2.直接访问硬件。3.具有很高的运行效率。

正因为嵌入式开发所需要的是C语言可以提供的,因此我们选择C语言。

具体详解,请观看我的另一篇文章,点击下面的链接。

点击打开链接

      
2.C语言有哪些特点?为什么有这些特点?

一,出色的移植性    二,可以直接访问硬件三 运行效率高

出色的移植性:在不同的软硬件平台,拥有相同的语言,在不同的平台下C语言同样适用。

访问硬件:C语言可以通过指针等特殊的数据类型,直接访问硬件。(C语言一般用于复杂的算法,汇编一般用于初始化)

运行效率:C语言可以直接生成硬件识别的机器码,而其它高级语言需要语言解释器进行解释,再编译。


3.C语言 VS 汇编
对于这两种语言,我们知道C语言是较高级语言,而汇编语言是较低级的语言。

它们主要的区别在以下几点:

一,语法上。汇编语言的语法晦涩难懂,使用起来不方便,程序的开发和维护效率较低;C语言的语法更接近于人类语言习惯,写出的代码容易理解和使用。

二,效率,虽然汇编语言的编译效率比C语言高,但它依旧不能直接在计算机上运行,需要专门的汇编程序把它翻译成机器指令。同样C语言也需要相应的编译器。


4.面向结构编程    VS  面向对象编程

首先从对两者的理解说起,我觉得面向结构语言主要解决具体的问题,而面向对象语言则是对宏观的掌控。比如,你去一个地方,面向结构语言研究的是你以什么方式,以及什么线路到达的。而面向对象语言只在乎你是否有误到达目的地。而我们做嵌入式开发,则是研究一个具体事项,这也是我们选择面向结构语言中的C语言作为嵌入式开发的一个原因这是两者的本质区别。

因为先有面向结构语言,后有面向对象语言。故后者在前者的缺点上有所提高。1.代码的复用性2.代码的扩展性 3.代码的维护性

5.哪些技术方向使用C语言?

我觉得这是非常重要的,因为只有知道一项技术的应用方向,你才会知道你将来的工作方向。

我们知道嵌入式开发分为上层和底层。

上层主要做应用开发,也就是linuxC开发。它不需要程序员懂硬件,只和操作系统打交道。并且了解操作系统提供的功能就可以进行开发。因此它必须精通C语言。(在这里给想从事上层应用软件开发的朋友一个建议,如果你想在这个阶层干的长久,你一定要了解内核)

底层主要的就是系统软件的开发。它要求程序员需要懂硬件,研究方向有BSP,驱动,内核三大方向。需要用linux C  根据客户的需求去测试功能。因此,底层开发,也去要精通C语言。

6.C语言之父?

丹尼斯.里奇。同样也是unix之父。

7.C语言有哪些标准?

目前主要的标准有以下几种:
1.K&RC标准2.C89标准 3.C99标准4.C11标准

切记:不同的编译器,支持不同的标准。以后工作时,一定要知道编译器是支持什么标准的,避免发生不必要的损失。

可通过以下链接,了解具体内容。

         点击打开链接























2 0