使用C语言的快感在于对程序的每一个部分的精确的控制,数据结构、算法,看到他们正常工作的时候真是一种享受。


    学习C语言,若要学好,需要学会在一开始的时候对程序的完全控制,一开始的时候尽量只调用最基本的库函数。确保自己清楚知道程序的每一个部分如何正常工作。

    

    纯C,更像是一种信仰 ……


——引至‘知乎’

一、C语言的用途


    1.操作系统/驱动开发. C语言是本地语言, 访问硬件很方便, 而且执行效率高效, 所以是操作系统和驱动开发的首选语言. 无论是windows还是unix/linux, 其操作系统的代码大部分是用C开发的;


    2.嵌入式开发,也就是运行在非PC上的, 其实这个也类似操作系统或驱动;


    3.游戏开发,无论是网游的服务器端, 还是3D的客户端, C/C++均有大量成熟的库, 可以帮你快速开发稳定高效的软件;


    4.数据库程序,无论是oracle还是mssql, 均提供了与C语言的接口(proc等), 可以方便的开发数据库程序;

    5.应用中间件,许多很牛的应用服务器也是C开发的. apache/.../

    6.GUI程序, 其实这一块与VB或其它相比稍弱一些. 但是有跨平台现成的GUI库支持, 也是应用多多, 比如QT库, 这个应用很大的是nokia的手机系统(塞班), Wx库, 或MFC库(当然MFC不只是一个GUI库), GTK等。


二、C语言的特点


优点:


    1.语言简洁,紧凑,使用方便,灵活

 

    2.运算符丰富

 

    3.数据类型丰富,具有现代语言的各种数据结构

 

    4.具有结构化的控制语句

 

    5.语法限制不太严格,程序设计自由度大

 

    6.语言允许直接访问物理地址,对硬件进行操作

 

    7.生成目标代码质量高,程序执行效率高

 

    8.用C语言编写的程序可移植性好(与汇编语言比)


缺点:


    1.C语言的缺点主要表现在数据的封装性上,这一点使得C在数据的安全性上有很大缺陷,这也是C和C++的一大区别。


    2.C语言的语法限制不太严格,对变量的类型约束不严格,影响程序的安全性,对数组下标越界不检查,从应用角度,C语言比其他高级原因较难掌握,也就是说,对用C语言的人,要求对程序设计更熟练一些。


三、C语言内容概要


    1.基本语法:数据类型、运算符、表达式和语句、控制流

    

    2.核心语法:函数、数组、指针、结构体(共同体、联合体)


    3.高级语法:存储类型、内存管理、预处理、高级申明、字对齐、地址对齐


四、C语言学习方法


    多练习,多思考,多总结,多借鉴