天天看點

【C語言】01-C語言概述

說明:這個c語言專題,是學習ios開發的前奏。也為了讓有面向對象語言開發經驗的程式員,能夠快速上手c語言。如果你還沒有程式設計經驗,或者對c語言、ios開發不感興趣,請忽略

ios開發的核心語言是objective-c,objective-c是在c語言的基礎加了一層面向對象的文法。為了能夠更好地掌握objective-c,我們可以先學習c語言,然後在c語言的基礎上升華到objective-c。當然,你也可以直接學習objective-c,隻是我個人建議先學習c語言,再學習objective-c,最後學習ios開發,這樣效果會好一點。

c語言于1972年發明,首次使用是用于重寫uinx作業系統(unix以前是用彙編寫的)

随着unix作業系統的成功,c語言也得到了大幅度地推廣,至今還是世界上最流行、使用最廣泛的進階程式設計語言之一

c語言是一門面向過程的語言,非面向對象的語言

下面是2013年3月份的程式設計語言熱門排行榜

【C語言】01-C語言概述

從c語言誕生至今,它的熱度一點也沒減過,前兩名基本上都是java和c

計算機的基本功能就是計算,是以一門程式設計語言的計算能力是非常重要的。c語言提供了34種運算符,計算類型及其豐富,其中包括了最基本的加減乘除運算。

c語言之是以生命力如何強大,很大一部分是因為它擁有豐富的資料類型。c語言的資料類型有:整型(int)、實型(float)、字元型(char)、數組類型(int [])、指針類型(void *)、結構體類型(struct)、共用體類型(union)等。衆多資料類型中,最強大的是指針,通過指針我們可以直接通路記憶體位址。指針使用得當的話,不僅可以節省代碼量,還可以優化記憶體管理、提高性能。是以,指針是一個非常重要的概念,必須重視。如果你說c語言中除了指針,其他都學得挺好的,那你幹脆說你沒學過c語言。正因為c語言資料類型豐富,運算能力極強,是以很多資料庫都是用c語言編寫的,比如db2、oracle等。

由于c語言允許直接通路實體位址,可以直接對硬體進行操作,是以它既具有進階語言的功能,又具有低級語言的許多功能,能夠像彙編語言一樣對位(bit)、位元組和位址進行操作,而這三者是計算機最基本的工作單元。

對比彙編語言,c語言可讀性好,易于調試、修改和移植,代碼品質與彙編語言相當。

在一個環境上用c語言編寫的程式,不改動或稍加改動,就可移植到另一個完全不同的環境中運作。

上面說的都算是c語言的優點,不過它肯定是有缺點的:

由于c語言是面向過程的,是以它的資料封裝性差、安全性低,這就是c語言和其他面向對象語言的差別之一。面向對象語言的特性之一就是資料的封裝性

文法限制不嚴格,對變量的類型限制不嚴格,對數組下标越界不作檢查等

由于c語言具有強大的資料處理能力,而且允許直接通路實體位址,直接對硬體操作,是以它适于編寫系統軟體、圖形處理、單片機程式、嵌入式系統開發甚至是用于科研

很多作業系統的底層都是用c語言寫的,比如android

 ios開發中的核心語言是objective-c(簡稱oc),oc是在c語言的基礎上加了一層面向對象文法

從unix作業系統的成功後,c語言得到了廣泛地應用,從大型主機到小型微機,都有c語言活躍的身影,也衍生了很多個版本的c語言。長期以往,c語言将可能成為一門有多個變種、松散的語言。一門正式的語言,肯定要有個标準才行,不然就亂套了。為了改變這種局面,1983年美國國家标準局(american national standards institute,簡稱ansi)成立了一個委員會,開始制定c語言标準的工作。1989年c語言标準被準許,這個版本的c語言标準通常被稱為ansi c

【C語言】01-C語言概述
【C語言】01-C語言概述
【C語言】01-C語言概述

繼續閱讀