? ? ? ?在學習一種技能之前住闯,我們都需要對一些基礎內(nèi)容進行了解断箫,久而久之就像是常識拂酣,而深深的印在我們腦海中。
1.C語言概述
? ? ? ? C語言其實就是一種計算機語言仲义,就像英語一樣婶熬,我們要想和British英國人打交道就要去學English英語,那么C語言作為一種計算機語言自然而然的就是我們和計算機之間通訊的一種語言埃撵,主要是由一些指令組成赵颅,這些指令包括數(shù)字、符號和語法等內(nèi)容暂刘,我們通過這些指令來指揮計算機進行各種工作饺谬。然而計算機語言的種類很多,就像這個世界上有漢語谣拣、朝鮮語募寨、英語一樣。我們根據(jù)時間劃分它們森缠,首先登陸歷史舞臺的是機器語言拔鹰,我們都知道計算機其實就是一臺機器,他能直接識別的就是機器語言0和1辅鲸,也就是電路上的低電平和高電平格郁,但是0和1組成的指令串不便于我們記憶和識別,所以匯編語言就誕生在歷史的舞臺上独悴,匯編語言其實就是一些英文字母或符號串,但是這些英文字母或符號串是按照和機器語言對應關系轉(zhuǎn)換而來的锣尉,如單詞add就表示相加的意思刻炒,計算機通過對應關系也能識別add,這里的對應關系也就是我們后邊要講的編譯自沧,這樣一來匯編語言就相對機器語言更加便于閱讀和理解坟奥。可是匯編語言也有缺點拇厢,那就是匯編語言較靠近機器語言爱谁,也就是比較依賴于硬件,不利于我們程序的移植孝偎,就像我們每臺計算機里面內(nèi)部的構(gòu)造都有所不同访敌,匯編語言太過于依賴這些硬件,我們在這臺計算機寫得匯編語言代碼可以運行衣盾,在另一臺計算機就不一定能運行了寺旺,因此高級計算機語言就此誕生爷抓,高級語言更加通俗易懂,便于我們學習同時也不用關心計算機內(nèi)部的架構(gòu)是如何阻塑,有良好的可移植性蓝撇。C語言就是高級語言之一,還有很多高級語言陈莽,如C++渤昌、Java、C#走搁、HTML等等等独柑,但C語言絕對是這些高級語言的元老,這也就是學編程先學C的原因之一朱盐,后面的一些高級語言或多或少都有借鑒C語言的一些思想和語法群嗤。但正所謂術(shù)業(yè)有專攻,另一些高級語言之所以會出現(xiàn)或流行兵琳,因為不同的領域都有不同的需要狂秘,在這里我們無需多談。
? ? ? ?看了C語言的發(fā)展史躯肌,感覺很有趣者春,在這里另起一段略談C語言的發(fā)展歷史,我們都知道C語言是由匯編語言發(fā)展過來的清女,但你們知道這個過程是怎么樣的嗎钱烟?C語言的最初原形是 ALGOL 60 語言,也稱A語言嫡丙,哈哈哈哈拴袭,有趣吧!那么有A肯定有B咯曙博,1963年拥刻,劍橋大學將 ALGOL 60 語言(也就是A語言)發(fā)展成為CPL(Combined Programming Language)語言,時隔四年父泳,劍橋大學的一個叫馬丁.查理茲的般哼,對CPL語言進行簡化,就產(chǎn)生了 ?BCPL 語言(這里的B是Basic的意思惠窄,Basic Combined Programming Language)蒸眠,接下來又時隔三年,美國的貝爾實驗室肯.湯普森對 BCPL 語言進行修改并命名為B語言杆融,又時隔三年(歷史的發(fā)展總是那么的有趣)楞卡,還是美國的貝爾實驗室叫丹尼斯.里奇在B語言的基礎上設計出一種新的語言,即C語言,他為了區(qū)分取了 BCPL 中的C作為改作為這種語言的名字臀晃。在1978年觉渴,丹尼斯.里奇就出版了著名的《The C Programming Language》,從而使C語言成為目前世界上流行最廣泛的高級程序設計語言徽惋。
2.為什么要學習C語言
? ? ? ?有人要說C語言已經(jīng)過時了案淋,的確,C語言從誕生到現(xiàn)在確實經(jīng)歷過四十多年了险绘,但并不意味著C語言已經(jīng)老了踢京、過時了。隨著現(xiàn)在嵌入式產(chǎn)品的增多宦棺,C語言簡潔高效的特點又被重視起來瓣距,像手機、游戲機代咸、平板電腦蹈丸、高清電視都需要C語言,即將到來的物聯(lián)網(wǎng)也需要C語言出一份力呐芥,所以C語言的地位只會越來越高逻杖。掌握C語言的編程知識,也是求職拿高薪的敲門磚思瘟。
3.主流開發(fā)工具介紹
? ? ? ?首先是Visual Studio工具荸百,是由微軟公司發(fā)布的集成開發(fā)環(huán)境,并且支持多種程序語言開發(fā)和測試滨攻,功能十分強大够话。在這里我使用的Visual Studio 2013版的。Code::Block工具這是一個免費的跨平臺IDE(集成開發(fā)環(huán)境)光绕,重點免費女嘲,圈起來,看到免費總是莫名的興奮诞帐。Eclipse工具是一種廣泛使用的 免費 跨平臺IDE(Integrated Development Environment),由IBM公司開發(fā)澡为,Eclipse是一個輕量級的IED。Vim工具是一款功能非常強大的文本編輯器景埃,是UNIX系統(tǒng)上Vi編輯器的升級版,所以Vim有時也被編程人員直接當作IDE使用顶别。
? ? ? ?軟件的安裝就不過多的介紹谷徙,裝軟件就是一種必備的技能,相信大家都裝過游戲驯绎,過程差不多完慧,思想是一樣的,你要想玩剩失,必需要裝屈尼,不會就度娘册着。
4.編寫 HelloWorld 程序
? ? ? ?和多數(shù)的編程語言一樣,入門都是編寫HelloWorld程序脾歧,如果你去面試甲捏,面試官叫你編寫HelloWorld程序,你不會鞭执,那我想面試官會送你六字緘言——有多遠滾多遠司顿!
? ? ? ?具體實現(xiàn)步驟如下:1.打開VS2013
可以點擊新建項目或通過文件—>新建—>項目。
我們敲的C語言代碼兄纺,所以會用到的是C++中的模版大溜,然后選常規(guī)—>空項目,然后設置項目名稱估脆、存儲項目文件的位置和解決方案名稱钦奋,解決方案名稱和項目名稱是一樣的。
添加新建項:選擇源文件右鍵—>添加—>新建項
修改名稱為HelloWorld.c疙赠,然后添加
然后敲代碼8恫摹!棺聊!
#include<stdio.h>
void main()
{
? ? ? ?printf("HelloWorld!\n");
? ? ? ?System("pause");
}
代碼解讀:#是預處理標志伞租,用來對文本進行預處理操作;include是預處理指令限佩,<stdio.h>:尖括號表示頭文件在尖括號內(nèi)讀入葵诈,stdio.h就是頭文件,是標準輸入輸出頭文件祟同,主要是因為主函數(shù)體內(nèi)用到printf()函數(shù)作喘,所以需要該頭文件拭嫁;void表示空類型壶辜,主函數(shù)體無返回值;main()函數(shù)就是主函數(shù)愕贡,一個程序只能有一個主函數(shù)入口砖顷,就是main函數(shù)贰锁;{}表示主函數(shù)體;printf("HelloWorld!\n")是格式化輸出函數(shù)滤蝠,用于輸出一行信息豌熄,這里是向控制臺輸出HelloWorld;'\n'表示轉(zhuǎn)義字符換行物咳;(锣险;)分號表示一條語句的結(jié)束;被{}括起來的語句稱為語句塊。語句System(“pause”)作用是暫停程序芯肤,不加上這一句程序會一閃而過巷折,注意System要大寫在.cpp小寫是編譯不通過的,但是在這里可以崖咨,因為.c可以編譯锻拘,不注重大小寫。
到此HelloWorld程序編寫結(jié)束掩幢!
這里我們只需有個大致印象即可逊拍,因為往后會繼續(xù)講解用VS2013工具編寫C程序。
補充:注釋际邻。
注釋是對程序某個功能或者是代碼進行解釋說明芯丧,在編譯時會被編譯器忽略,不對程序產(chǎn)生影響世曾。注釋有兩種缨恒,分為單行注釋(//)和多行注釋(/* ? ? */),在C語言中多行注釋可以嵌套單行注釋轮听,但是多行注釋不能嵌套多行注釋骗露。