C语言学习开篇 对C语言和编程的认识
提示:文章寫(xiě)完后,目錄可以自動(dòng)生成,如何生成可參考右邊的幫助文檔
文章目錄
- 前言
- 一、C語(yǔ)言是什么?
- 二、使用C語(yǔ)言編程
- 1.編譯的過(guò)程
- 2.編程的基本要求
- 其他細(xì)節(jié)
前言
提示:開(kāi)篇不講語(yǔ)法,但對(duì)編程不是死記硬背,更多的是規(guī)則的領(lǐng)悟,既然是領(lǐng)悟,了解它的背景知識(shí),是很有必要的
提示:以下是本篇文章正文內(nèi)容,下面案例可供參考
一、C語(yǔ)言是什么?
?C語(yǔ)言是計(jì)算機(jī)科學(xué)理論體系的一部分,目的是讓CPU運(yùn)行你寫(xiě)的程序。最終C語(yǔ)言源程序要變成可執(zhí)行程序。
?C語(yǔ)言是面向過(guò)程的編程語(yǔ)言,C適合完成自頂向下、結(jié)構(gòu)化編程和模塊化設(shè)計(jì)。它更著重算法和語(yǔ)法的運(yùn)用,比如設(shè)計(jì)不同的函數(shù)。一個(gè)C程序模塊=數(shù)據(jù)結(jié)構(gòu)+算法。
?C語(yǔ)言有一堆語(yǔ)法,究其根本就是“一堆規(guī)則”,正如《C Primer Plus》Page 6所說(shuō),C語(yǔ)言語(yǔ)法要保證,針對(duì)目標(biāo)計(jì)算機(jī)來(lái)定義最合適的某種特定操作,語(yǔ)言無(wú)歧義,且保證效率。
二、使用C語(yǔ)言編程
1.編譯的過(guò)程
?為什么需要編譯器:編程語(yǔ)法很多,都有自己的特殊用途。編程語(yǔ)言可以劃分為三類(lèi):
?(1)機(jī)器語(yǔ)言;(2)匯編語(yǔ)言;(3)高級(jí)語(yǔ)言。
?機(jī)器語(yǔ)言是二進(jìn)制代碼。匯編語(yǔ)言和高級(jí)語(yǔ)言需要轉(zhuǎn)換成機(jī)器語(yǔ)言,cpu才能執(zhí)行。匯編和高級(jí)語(yǔ)言都有標(biāo)識(shí)符,匯編的每一個(gè)命令對(duì)應(yīng)實(shí)際操作的一個(gè)微小動(dòng)作。
?C程序經(jīng)過(guò)編譯生成機(jī)器代碼(目標(biāo)文件),再通過(guò)連接器合并機(jī)器碼,即將目標(biāo)文件、系統(tǒng)的標(biāo)準(zhǔn)啟動(dòng)代碼和庫(kù)文件來(lái)生成可執(zhí)行文件。有的編譯器會(huì)自動(dòng)啟動(dòng)連接器。
最終,C語(yǔ)言編程的過(guò)程中,我們可能接觸以下文件
C程序的實(shí)現(xiàn)過(guò)程可以使用gcc來(lái)進(jìn)行實(shí)驗(yàn),鏈接如下:https://blog.csdn.net/qq_37924645/article/details/70147970
2.編程的基本要求
一門(mén)語(yǔ)言都需要關(guān)注的內(nèi)容如下:
- C語(yǔ)言語(yǔ)法和標(biāo)準(zhǔn)(C語(yǔ)言標(biāo)準(zhǔn)由C90,C99,C11)
- 編譯器(gcc,clang等)(并不是所有編譯器都支持C99,C11)
- 操作系統(tǒng):編譯的細(xì)節(jié)取決于操作系統(tǒng),且最終程序的啟動(dòng)文件就是程序與操作系統(tǒng)的接口。有的語(yǔ)言在不同操作系統(tǒng)上不能直接移植
- CPU:CPU都有自己對(duì)應(yīng)的匯編指令集,編譯器需要先把源文件翻譯成匯編文件,最后翻譯成機(jī)器碼
?
其他細(xì)節(jié)
編譯、鏈接概念的參考鏈接:http://c.biancheng.net/view/1736.html
C語(yǔ)言參考書(shū)建議是:
《Linux編程一站式學(xué)習(xí)》,作者宋勁杉;
《C Primer Plus》
總結(jié)
以上是生活随笔為你收集整理的C语言学习开篇 对C语言和编程的认识的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 企鹅龙(DRBL)无盘启动+再生龙(cl
- 下一篇: 状态模式(State模式)