- C指針原理揭秘:基于底層實現機制
- 劉興編著
- 728字
- 2019-06-21 18:20:30
1.2 C語言特性
2011年10月9日,丹尼斯·里奇去世,享年70歲,Java之父詹姆斯·高斯林(James Gosling)為此發表了紀念C語言之父丹尼斯·里奇的簡短博文:“丹尼斯·里奇辭世的新聞如五雷轟頂,過去幾天已經有很多資訊在報道此事,他的影響巨大,并超越了科技世界,雖然他的巨大影響可能不為人知,但完全可以感受到的是,C語言撐起了一切。我的整個職業生涯也是從C語言和UNIX中發展而來的。”全世界的計算機愛好者都以他們特有的方式紀念這位編程語言的重要奠基人,很多人在眾多的國際交互論壇中發帖悼念C語言之父,全帖僅僅只用一個分號“;”(在C語言中,分號標志著一行指令語句的結束)形象地表達了人們的懷念之情。
C語言之父悄然離去,但C語言并沒有因此衰退,近年來它仍然是世界主流的編程語言之一。在2019年3月的TIOBE編程語言排行榜中(如圖1-1所示),C語言仍處于第2位,并呈現上升勢頭。
C語言主要有以下特性:
1)設計目標接近機器底層但不失跨平臺性。C語言提供了許多低級處理的功能,可搭配匯編語言來使用,著名的C編譯器GCC(UNIX下常用的是CC)保持著良好的跨平臺的特性,以一個標準規格寫出的C語言程序通過GCC(或CC)可在許多計算機平臺上進行編譯,甚至包含嵌入式環境以及大型機平臺。
2)C語言編譯生成的可執行文件短小精悍。C語言能以簡易的方式進行編譯,可直接處理低級存儲器,僅產生少量的機器碼,并且不需要任何運行環境的支持便能運行。
3)C語言雖簡單但功能強大。C語言僅有32個保留字符,使用傳統的結構化設計,變量具有作用域、遞歸等優秀功能,編譯預處理使得編譯更具彈性,傳遞參數靈活,可采用值傳遞和指針傳遞兩種方式,不同的變量類型可用結構體(struct)組合在一起;此外,C指針很容易就能對存儲器進行低級控制。

圖1-1 2019年3月TIOBE編程語言排行榜
- C語言程序設計(第3版)
- 編程的修煉
- Groovy for Domain:specific Languages(Second Edition)
- Linux網絡程序設計:基于龍芯平臺
- Xamarin.Forms Projects
- jQuery開發基礎教程
- Learning Salesforce Einstein
- PHP 7+MySQL 8動態網站開發從入門到精通(視頻教學版)
- Mastering ROS for Robotics Programming
- ExtJS高級程序設計
- 搞定J2EE:Struts+Spring+Hibernate整合詳解與典型案例
- Kubernetes進階實戰
- Getting Started with Polymer
- Learning iOS Security
- 測試架構師修煉之道:從測試工程師到測試架構師