很多初學(xué)者都會(huì)問(wèn)我,“我想學(xué)C,該怎么開(kāi)始呢?”,今天我們就來(lái)聊一聊,屬于初學(xué)者必須懂的知識(shí),希望小伙伴們,能夠牢記基礎(chǔ)知識(shí),唯有不斷努力才能更加順利。
基本常識(shí)
計(jì)算機(jī)語(yǔ)言:把人與計(jì)算機(jī)之間交流的語(yǔ)言叫做計(jì)算機(jī)語(yǔ)言
計(jì)算機(jī)語(yǔ)言分為高級(jí)語(yǔ)言和低級(jí)語(yǔ)言
高級(jí)語(yǔ)言:遠(yuǎn)離硬件
低級(jí)語(yǔ)言:貼近硬件
指令:是指計(jì)算機(jī)執(zhí)行某種操作的命令
它由一串二進(jìn)制數(shù)碼組成。
一條指令通常由兩個(gè)部分組成:操作碼+地址碼
操作碼
指明該指令要完成的操作的類(lèi)型或性質(zhì)
如取數(shù)、做加法或輸出數(shù)據(jù)等
地址碼
指明操作對(duì)象的內(nèi)容或所在的存儲(chǔ)單元地址
機(jī)器語(yǔ)言:計(jì)算機(jī)本身各個(gè)部件之間溝通時(shí)所使用的語(yǔ)言
特點(diǎn):對(duì)計(jì)算機(jī)本身來(lái)說(shuō),只能識(shí)別由0和1代碼構(gòu)成的二進(jìn)制指令
源程序:把由高級(jí)語(yǔ)言編寫(xiě)的程序稱(chēng)為源程序
源程序——編譯程序——目標(biāo)程序
(二進(jìn)制代碼表示的程序,即計(jì)算機(jī)只識(shí)別目標(biāo)程序)
編譯程序:如何把源程序轉(zhuǎn)換成機(jī)器能夠接受的目標(biāo)程序,軟件工作者編制了一系列的軟件.通過(guò)這些軟件,把用戶(hù)按規(guī)定語(yǔ)法寫(xiě)出的語(yǔ)句一一翻譯成二進(jìn)制的機(jī)器指令. 這種具有翻譯功能的軟件稱(chēng)為“編譯程序”
C源程序:用C語(yǔ)言構(gòu)成的指令序列稱(chēng)為C源程序
C語(yǔ)言的代碼編寫(xiě):按C語(yǔ)言的語(yǔ)法編寫(xiě)C程序的過(guò)程稱(chēng)C語(yǔ)言的代碼編寫(xiě)
C語(yǔ)言源程序文件名后綴是 .c
經(jīng)過(guò)編譯后,生成文件的后綴是 .obj
經(jīng)過(guò)連接后,生成文件的后綴是 .exe
程序設(shè)計(jì)
程序設(shè)計(jì)一般包含以下五個(gè)部分
確定數(shù)據(jù)結(jié)構(gòu)
確定算法
編碼
在計(jì)算機(jī)上調(diào)試程序
整理并寫(xiě)出文檔資料
算法:指為解決某個(gè)特定問(wèn)題而才去的確定且有限的步驟.一個(gè)算法應(yīng)當(dāng)具有以下五個(gè)特點(diǎn)
有窮性
確定性
可行性
有零個(gè)或多個(gè)輸入
有一個(gè)或多個(gè)輸出
算法可以用各種描述方法進(jìn)行描述,最常用的是偽代碼和流程圖
C語(yǔ)言為結(jié)構(gòu)化的語(yǔ)言,C語(yǔ)言有三種結(jié)構(gòu):
順序結(jié)構(gòu)
選擇結(jié)構(gòu)
循環(huán)結(jié)構(gòu)
循環(huán)結(jié)構(gòu)又包含當(dāng)型循環(huán)和直到型循環(huán)
當(dāng)型循環(huán)
先判斷,后執(zhí)行。最少執(zhí)行0次
直到型循環(huán)
先執(zhí)行,后判斷。最少執(zhí)行1次
簡(jiǎn)單C語(yǔ)言的構(gòu)成和格式
C語(yǔ)言學(xué)習(xí)內(nèi)容
C語(yǔ)言程序基本格式
命令行
1)命令行必須以“#”開(kāi)頭,最后不能加“;”結(jié)尾,因?yàn)樗皇荂語(yǔ)言的語(yǔ)句。
2)一對(duì)雙引號(hào)中間的stdio.h是系統(tǒng)提供的文件名,該文件中包含著有關(guān)輸入輸出函數(shù)的 信息。
主函數(shù)
1)main是主函數(shù)名,C語(yǔ)言規(guī)定必須用main作為主函數(shù)名
2)主函數(shù)后的一對(duì)括號(hào)中間可以是空的,但這一對(duì)括號(hào)不能省略。
3)一個(gè)C程序可以包含任意多個(gè)不同名字的函數(shù),但必須有且只有一個(gè)主函數(shù)。
4)C程序的運(yùn)行總是從主函數(shù)開(kāi)始執(zhí)行。
函數(shù)體
1)在主函數(shù)的下方是函數(shù)體部分,函數(shù)體總是從“{”開(kāi)始,到“}”結(jié)束。
2)函數(shù)體分為定義(說(shuō)明)部分和執(zhí)行語(yǔ)句部分。
3)可執(zhí)行語(yǔ)句數(shù)量不限,但必須放在定義語(yǔ)句后面。
C語(yǔ)言的簡(jiǎn)單語(yǔ)法格式:
1)C語(yǔ)句必須以“;”結(jié)束,“;”是C語(yǔ)句的一部分,而不是語(yǔ)句間的分隔符。
2)注釋符號(hào)“/*” “*/”必須成對(duì)出現(xiàn),且不允許出現(xiàn)嵌套情況。“/”和“*”之間不允許有空格。
標(biāo)識(shí)符的組成和分類(lèi)
什么是標(biāo)識(shí)符:
1、組成:由字母、數(shù)字、下劃線(xiàn)組成。
2、組成規(guī)則:標(biāo)識(shí)符不能以“數(shù)字”開(kāi)頭
3、特點(diǎn):
1)區(qū)分大小寫(xiě)
2)在C語(yǔ)言中,計(jì)算機(jī)只識(shí)別長(zhǎng)度為“8”位以?xún)?nèi)的標(biāo)識(shí)符。(即標(biāo)識(shí)符最多只能有8位)
標(biāo)識(shí)符的分類(lèi):
1、關(guān)鍵字
1)系統(tǒng)已經(jīng)給定含義的,我們不能在用作其他的含義(如:if、while等等)
2)C語(yǔ)言共有39個(gè)關(guān)鍵字
2、預(yù)定義標(biāo)識(shí)符
1)系統(tǒng)已經(jīng)定義好的含義,但我們可以用作其他含義的標(biāo)識(shí)符。(如:printf、scanf等等)
2)建議不要更改預(yù)定義標(biāo)識(shí)符。
3)用戶(hù)自定義標(biāo)識(shí)符
1)用戶(hù)自己定義的標(biāo)識(shí)符。
2)自己定義的標(biāo)識(shí)符要符合標(biāo)識(shí)符的組成規(guī)則。
整形數(shù)據(jù)和實(shí)型數(shù)據(jù)
常量:
1、定義:程序運(yùn)行中,始終不變的量。
2、分類(lèi):
1)整形常量(如:123)
2)實(shí)型常量(如:12.34)
double(默認(rèn)情況下,編譯器假定浮點(diǎn)型常量為double類(lèi)型的精度)
3)字符型常量(如:'a')
4)字符串常量(如:''hello'')
5)符號(hào)常量(一般由預(yù)處理器宏定義的大寫(xiě)字符表示)
語(yǔ)法格式:#define 標(biāo)識(shí)符 常量
例如:#define PI 3.14159 (其含義是在程序中凡是出現(xiàn)PI時(shí),其值都為3.14159)
變量:
1、定義:其值可以改變的量。
2、本質(zhì):內(nèi)存中的存儲(chǔ)單元。
-
C語(yǔ)言
+關(guān)注
關(guān)注
180文章
7632瀏覽量
141799 -
深度學(xué)習(xí)
+關(guān)注
關(guān)注
73文章
5561瀏覽量
122800
原文標(biāo)題:初學(xué)C語(yǔ)言?先搞懂這些基礎(chǔ)知識(shí)再談深度學(xué)習(xí)吧!
文章出處:【微信號(hào):cyuyanxuexi,微信公眾號(hào):C語(yǔ)言編程學(xué)習(xí)基地】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
C語(yǔ)言基礎(chǔ)知識(shí)科普
STM32單片機(jī)中的C語(yǔ)言基礎(chǔ)知識(shí)
學(xué)習(xí)mcu先學(xué)習(xí)C語(yǔ)言--譚浩強(qiáng)c語(yǔ)言(最經(jīng)典的c語(yǔ)言學(xué)習(xí))
關(guān)于C語(yǔ)言的基礎(chǔ)知識(shí)
C語(yǔ)言基礎(chǔ)知識(shí)匯總
STM32學(xué)習(xí)中會(huì)遇見(jiàn)的C語(yǔ)言基礎(chǔ)知識(shí)點(diǎn)講解
C++語(yǔ)言基礎(chǔ)知識(shí)講解
適合C語(yǔ)言小白看的基礎(chǔ)知識(shí)梳理總結(jié)
STM32中C語(yǔ)言的基礎(chǔ)知識(shí)

C語(yǔ)言基礎(chǔ)知識(shí)點(diǎn)

評(píng)論