亚洲精品一二区_国产黄色片网站_99久久久成人国产精品_蜜臀网_国产精品一区二区三区免费_成人av中文字幕_91精品国产欧美一区二区成人

當(dāng)前位置:首頁(yè) > 嵌入式培訓(xùn) > 嵌入式學(xué)習(xí) > 講師博文 > 嵌入式學(xué)習(xí)——掌握基礎(chǔ)技術(shù)很重要

嵌入式學(xué)習(xí)——掌握基礎(chǔ)技術(shù)很重要 時(shí)間:2022-05-26      來(lái)源:華清遠(yuǎn)見(jiàn)
所有的技術(shù)原理和本質(zhì)都在基礎(chǔ)技術(shù)上,只有基礎(chǔ)技術(shù)才能讓你上升到更高層次,在技術(shù)的世界里,量變無(wú)法導(dǎo)致質(zhì)變,掌握基礎(chǔ)技術(shù)及原理可以讓自己推導(dǎo)答案和趨勢(shì)。

 

C語(yǔ)言學(xué)習(xí)目標(biāo)

 

掌握C語(yǔ)言的語(yǔ)法規(guī)則,數(shù)組,循環(huán),函數(shù),指針等。

 

要學(xué)會(huì)一些算法,比如冒泡排序,快速排序,遞歸等。

 

在學(xué)習(xí)的過(guò)程中理解什么是面向過(guò)程,為將來(lái)學(xué)習(xí)c艸,Java等面向?qū)ο笳Z(yǔ)言做準(zhǔn)備。

 

如何學(xué)習(xí)C語(yǔ)言

 

掌握基礎(chǔ)知識(shí),為將來(lái)進(jìn)一步學(xué)習(xí)打下良好的基礎(chǔ)

 

上機(jī)實(shí)踐,通過(guò)大量的例題學(xué)習(xí)怎么設(shè)計(jì)算法,培養(yǎng)解題思路

 

養(yǎng)成良好的編程習(xí)慣,注釋一定要寫,不然一周后自己寫的代碼都不認(rèn)識(shí)了

 

這三行代碼作用

 

#include<stdio.h>//頭文件

 

int main()//主函數(shù),main函數(shù)程序的入口必有而且只能有一個(gè)

 

 

for (int i = 0; i < 10; i++) 

 

 

printf("%d\n", i);//這個(gè)輸出函數(shù)不是C語(yǔ)言自帶的,而是包含在庫(kù)函數(shù)<stdio.h>里面

 

 

return 0;//將結(jié)果返回到函數(shù)調(diào)用處

 

 

怎么解決學(xué)習(xí)C語(yǔ)言過(guò)程中遇到的問(wèn)題 

 

問(wèn)題分析:對(duì)上級(jí)分配的工作要進(jìn)行認(rèn)真的分析,研究所給出的條件,分析最后應(yīng)該達(dá)到的目標(biāo),找出解決問(wèn)題的規(guī)律,選擇解題的方法。 

 

設(shè)計(jì)算法:例如要解一個(gè)方程式,就要選擇用什么方法求解,并且把求解的每一步清晰的寫出來(lái)。

 

編寫程序:根據(jù)得到的算法,用c語(yǔ)言編寫出源代碼,在寫代碼的過(guò)程中盡可能的添加注釋。

 

編譯源程序:對(duì)源程序進(jìn)行編輯、編譯和連接,得到可執(zhí)行程序,如果編譯不通過(guò),根據(jù)報(bào)錯(cuò)提醒,解決報(bào)錯(cuò)。

 

運(yùn)行程序、分析結(jié)果:能得到程序不一定意味著程序就是正確的,要對(duì)結(jié)果進(jìn)行分析,看它是否合理。 

 

編寫程序文檔:許多程序是提供給別人使用的,提供給用戶使用的程序,必須有說(shuō)明書。內(nèi)容包括:程序名稱、功能、運(yùn)行環(huán)境、程序的裝入和啟動(dòng)、需要輸入的數(shù)據(jù),以及其他注意事項(xiàng)。 

 

c語(yǔ)言代碼結(jié)構(gòu) 

 

一個(gè)程序由一個(gè)或者多個(gè)源程序文件組成,一個(gè)規(guī)模較小的程序,往往只包括一個(gè)源程序文件,一個(gè)源程序文件包括3部分: 

 

1、預(yù)處理指令,由預(yù)處理得到的結(jié)果與程序其他部分一起,組成一個(gè)完整的、可以用來(lái)編譯的最后的源程序,然后由編譯程序?qū)υ撛闯绦蛘竭M(jìn)行編譯,才能得到目標(biāo)程序。

 

2、全局聲明,即在函數(shù)之外進(jìn)行數(shù)據(jù)聲明。 

 

3、函數(shù)定義,自己定義的函數(shù)

 

函數(shù)是c程序的主要組成部分 

 

1、程序的幾乎全部工作都是由各個(gè)函數(shù)分別完成的,函數(shù)是c程序的基本單位,在設(shè)計(jì)良好的程序中,每個(gè)函數(shù)都用來(lái)實(shí)現(xiàn)一個(gè)或幾個(gè)特點(diǎn)的功能. 

 

一個(gè)函數(shù)包括兩部分

 

1、函數(shù)首部,即函數(shù)的第一行,包括函數(shù)名、函數(shù)類型、函數(shù)屬性、函數(shù)參數(shù)、參數(shù)類型。 

 

2、函數(shù)體,包括聲明部分和執(zhí)行部分。

 

函數(shù)總是從main函數(shù)開(kāi)始的

 

1、不管main函數(shù)在整個(gè)程序中的位置如何,main函數(shù)可以放在程序的開(kāi)頭,也可以放在程序的結(jié)尾,或在一些函數(shù)之前,或一些函數(shù)之后。

 

程序中對(duì)計(jì)算機(jī)的操作是由函數(shù)中的c語(yǔ)句完成的 

 

1、如賦值,輸入輸出數(shù)據(jù)的操作都是由相應(yīng)的c語(yǔ)句實(shí)現(xiàn)。

 

在每個(gè)數(shù)據(jù)聲明和語(yǔ)句的最后必須有一個(gè)分號(hào)

 

1、分號(hào)是c語(yǔ)句的必要組成部分。

 

C語(yǔ)言本身不提供輸入輸出語(yǔ)句 

 

1、輸入和輸出的操作是由庫(kù)函數(shù)scanf和printf函數(shù)來(lái)完成。 

 

程序應(yīng)當(dāng)包含注釋

 

1、一個(gè)好的、有使用價(jià)值的源程序都應(yīng)當(dāng)加上必要的注釋,增加程序的可讀性。

 

常量:在程序運(yùn)行過(guò)程中,其值不能被改變的量稱為常量。 

 

分為以下幾類:

 

1、整型常量

 

2、實(shí)型常量

 

3、字符常量(分為普通字符和轉(zhuǎn)義字符) 

 

4、字符串常量

 

5、符號(hào)常量 

 

變量:變量代表一個(gè)有名字的,具有特定屬性的一個(gè)存儲(chǔ)單元。 

 

常變量:c99允許使用常變量,常變量具有變量的基本屬性只是不允許修改。 

 

#include<stdio.h>//頭文件 

 

#define PI 3.14//屬于常變量聲明了PI的值是3.14,PI的值就不能改變 

 

int main()//主函數(shù) 

 

 

int number = 5;//number是個(gè)變量,5是個(gè)常量 

 

float number_2 = 1.234; 

 

double number_3 = 3.5678;//number_2和number_3屬于實(shí)型變量,后面的值是常量 

 

char character = 'a';//character是字符變量,'a'是字符常量 

 

return 0; 

 

 

浮點(diǎn)類型 

 

1、單精度浮點(diǎn)類型:float

 

2、雙精度浮點(diǎn)類型:double 

 

3、復(fù)數(shù)浮點(diǎn)型:float_comlex,double_comple,long long_comple  (編譯系統(tǒng)為每一個(gè)float型變量分配4個(gè)字節(jié),數(shù)值以規(guī)范化的二進(jìn)制數(shù)指數(shù)形式存放在存儲(chǔ)單元中)(double型為了擴(kuò)大能表示的數(shù)值范圍,用8個(gè)字節(jié)存儲(chǔ)一個(gè)double型數(shù)據(jù),可以得到15位有效數(shù)字) 

 

枚舉類型:enum

 

字符和字符代碼 

 

1、字母

 

2、數(shù)字 

 

3、專門符號(hào) 

 

4、空格符 

 

5、不能顯示的字符 

 

字符變量 

 

1、字符變量是用類型符char定義字符變量 

 

整型變量    (注意:這里占多少個(gè)字節(jié)跟系統(tǒng)和編譯器規(guī)定有關(guān)!可以在編譯器上自己試試查看) 

 

1、基本型:類型說(shuō)明符為int在內(nèi)存中占2個(gè)字節(jié)或4個(gè)字節(jié)(vs2022中是4個(gè)字節(jié)) 

 

2、短整型:類型說(shuō)明符為short int或short  (vs2022中是2個(gè)字節(jié))

 

3、長(zhǎng)整型:類型說(shuō)明符為long int 一個(gè)long int型變量的值的范圍是-2的31次方~2的31次方-1,即-2147483648~2147483647.,(vs2022中是4個(gè)字節(jié)) 

 

4、雙長(zhǎng)整型:long long int    (vs2022中是8個(gè)字節(jié),這個(gè)是c99新增的類型) 

 

標(biāo)識(shí)符:用來(lái)對(duì)變量、符號(hào)常量名、函數(shù)、數(shù)組、類型等命名的有效字符序列統(tǒng)稱為標(biāo)識(shí)符。 

 

c語(yǔ)言規(guī)定標(biāo)識(shí)符只能由字母、數(shù)字和下劃線3種字符組成,且第1個(gè)字符必須為字母或下劃線。

 

C語(yǔ)言%求余

 

#include<stdio.h> 

 

int main() 

 

 

int num1, num2;

 

num1 = 4;

 

num2 = 3;//如果后一個(gè)數(shù)比前一個(gè)大,求余的值就還是前一個(gè)數(shù) 

 

printf("兩數(shù)求余的值:%d\n", num1 % num2); 

 

 

C語(yǔ)言算術(shù)表達(dá)式和運(yùn)算符的優(yōu)先級(jí)與結(jié)合性 

 

1、在表達(dá)式求值時(shí),先按運(yùn)算符的優(yōu)先級(jí)別順序執(zhí)行,例如先乘除后加減。如果在一個(gè)運(yùn)算對(duì)象兩側(cè)的運(yùn)算符的優(yōu)先級(jí)別相同,則按照結(jié)合方向“自左至右”即先左后右執(zhí)行。

 

c語(yǔ)言強(qiáng)制類型轉(zhuǎn)換運(yùn)算符 

 

1、一般形式:(類型名)(表達(dá)式) 

 

(double)a:將a轉(zhuǎn)換成double類型

 

(int)(x+y):將x+y的值轉(zhuǎn)換成int類型 

 

c語(yǔ)言常用運(yùn)算符總結(jié) 

 

1、算術(shù)運(yùn)算符:+   -   /   %   ++   -- 

 

2、關(guān)系運(yùn)算符:>  <  ==  > = <  !=

 

3、邏輯運(yùn)算符:! &&   || 

 

4、位運(yùn)算符:<<  >> ~ | ^ & 

 

5、賦值運(yùn)算符:= 

 

6、條件運(yùn)算符:?: 

 

7、逗號(hào)運(yùn)算符:  ,

 

8、指針運(yùn)算符:* 

 

9、求字節(jié)運(yùn)算符: sizeof 

 

10、強(qiáng)制類型轉(zhuǎn)換運(yùn)算符: (需要強(qiáng)制轉(zhuǎn)換的類型)

 

11、成員運(yùn)算符:.  -> 

 

12、下標(biāo)運(yùn)算符:[]

 

13、函數(shù)調(diào)用運(yùn)算符:函數(shù)名() 

 

c語(yǔ)言關(guān)系運(yùn)算符是什么 

 

在c語(yǔ)言中,比較符稱為關(guān)系運(yùn)算符,所謂關(guān)系運(yùn)算就是比較運(yùn)算,將兩個(gè)數(shù)值進(jìn)行比較,判斷其比較的結(jié)果是否符合給的條件。 

 

#define _CRT_SECURE_NO_WARNINGS //忽略安全檢測(cè),不然使用scanf會(huì)報(bào)錯(cuò) 

 

#include<stdio.h> 

 

int main()

 

 

int num; 

 

scanf("%d", &num); 

 

if (num<5) 

 

{

 

printf("num小于5");

 

}

 

else 

 

 

printf("unm不小于5"); 

 

 

 

c語(yǔ)言邏輯運(yùn)算符優(yōu)先次序 

 

1、有3種邏輯運(yùn)算符:與(AND),或(OR),非(NOT)。在basic和pascal等語(yǔ)言可以在程序中直接用and,or,not作為邏輯運(yùn)算符。在c語(yǔ)言中不能在程序中直接使用,而是用其他符號(hào)代替。

 

2、!(非)  &&(與)  ||(或) 中“!”優(yōu)先級(jí)最高。

 

3、邏輯運(yùn)算符中的“&&”和“||”低于關(guān)系運(yùn)算符,“!”高于算術(shù)運(yùn)算符。 

 

4、&&和||是雙目運(yùn)算符,它要求有兩個(gè)運(yùn)算對(duì)象(操作數(shù)),!是一目運(yùn)算符,只要求有一個(gè)運(yùn)算對(duì)象。 

 

c語(yǔ)言邏輯表達(dá)式

 

邏輯表達(dá)式的值應(yīng)該是一個(gè)邏輯量“真”或“假”。C語(yǔ)言編譯系統(tǒng)在表示邏輯運(yùn)算結(jié)果時(shí),以數(shù)值1代表“真”,以0代表“假”,但在判斷一個(gè)量是否為“真時(shí)”,以0代表“假”,以非0代表“真”。即將一個(gè)非零的數(shù)值認(rèn)作“真”。 

 

c語(yǔ)言邏輯變量

 

這是c99所增加的一種數(shù)據(jù)類型。可以將關(guān)系運(yùn)算和邏輯運(yùn)算的結(jié)果存到一個(gè)邏輯型變量中,以便于分析和運(yùn)算。定義邏輯變量用類型符Bool。(vs2022沒(méi)有這個(gè)) 

 

c語(yǔ)言條件運(yùn)算符(三目運(yùn)算符) 

 

一般形式 

 

表達(dá)式1:? 表達(dá)式2:: 表達(dá)式3 

 

條件運(yùn)算符由兩個(gè)符號(hào)(?和:)組成,必須一起使用。要求有3個(gè)操作對(duì)象,稱為三目運(yùn)算符。 

 

三目運(yùn)算符可以這樣理解,先計(jì)算出表達(dá)式1的值,表達(dá)式1后面的問(wèn)號(hào)表示“該往哪里”,有兩條路,如果表達(dá)是1的值為真(非0),自然直接到表達(dá)式2,如為假(0值),就繞過(guò)表達(dá)式2,到表達(dá)式3. 

 

條件表達(dá)式由三個(gè)運(yùn)算對(duì)象和條件運(yùn)算符組成 

 

c語(yǔ)言使用條件運(yùn)算符注意事項(xiàng) 

 

1、條件運(yùn)算符優(yōu)先于賦值運(yùn)算符 

 

2、表達(dá)式“2”和表達(dá)式“3”不僅可以是數(shù)值表達(dá)式,還可以是賦值表達(dá)式或函數(shù)表達(dá)式。 

 

3、條件表達(dá)式相當(dāng)于一個(gè)不帶關(guān)鍵字if的if語(yǔ)句,用它處理簡(jiǎn)單選擇結(jié)構(gòu)可以使程序簡(jiǎn)潔。 

 

4、三目運(yùn)算符是C語(yǔ)言中唯一一個(gè)三目運(yùn)算符。 

 

c語(yǔ)言printf用法 

 

1、一般格式 

 

printf(格式控制,輸出表列) 

 

格式控制是用雙引號(hào)括起來(lái)的一個(gè)字符串,稱“轉(zhuǎn)換控制字符串”,簡(jiǎn)稱“格式字符串”, 

 

包含:(格式聲明:由%和格式字符組成,如%d、%f。)(普通字符:既需要在輸出時(shí)原樣輸出的字符。) 

 

輸出表列是程序需要輸出的一些數(shù)據(jù),可以是常量、變量或表達(dá)式。 

 

c語(yǔ)言printf注意事項(xiàng):輸出是以計(jì)算機(jī)為主體而言的,從計(jì)算機(jī)向輸出設(shè)備輸出數(shù)據(jù)稱為輸出,C語(yǔ)言本身不包含輸出語(yǔ)句,如果不加頭文件,代碼就會(huì)報(bào)錯(cuò)。 

 

c語(yǔ)言scanf函數(shù) 

 

一般形式 

 

scanf(格式控制,地址表列)

 

格式控制和printf函數(shù)一樣,地址表列是由若干個(gè)地址組成的表列,可以是變量的地址,或字符串的首地址。 

 

(格式聲明只包含一部分:以%開(kāi)始,以一個(gè)格式字符結(jié)束,中間可以插入附加的字符。) 

 

使用c語(yǔ)言scanf函數(shù)的注意事項(xiàng): 

 

1、scanf函數(shù)中的格式控制后面應(yīng)當(dāng)是變量地址,而不是變量名。 

 

2、如果在格式控制字符串中除了格式聲明以外還有其他字符,則在輸入數(shù)據(jù)時(shí)在對(duì)應(yīng)的位置上應(yīng)輸入這些字符相同的字符。 

 

3、在用%c格式聲明輸入字符時(shí),空格字符和轉(zhuǎn)義字符中的字符都作為有效字符輸入。

 

4、在輸入數(shù)值數(shù)據(jù)時(shí),如輸入空格、回車、tab鍵或遇到非法字符時(shí)會(huì)認(rèn)為你的輸入結(jié)束。 

 

C語(yǔ)言putchar函數(shù) 

 

想從計(jì)算機(jī)向顯示器輸出一個(gè)字符,可以調(diào)用系統(tǒng)函數(shù)庫(kù)中的putchar函數(shù)。 

 

一般形式

 

putchar(c)

 

putchar是put character(給字符)的縮寫,其作用是輸出字符變量c的值,顯然它是一個(gè)字符。getchar函數(shù)的值就是從輸入設(shè)備得到的字符。getchar函數(shù)只能接受一個(gè)字符。如果想輸入多個(gè)字符就要用多個(gè)getchar函數(shù)。 

 

c語(yǔ)言if語(yǔ)句的一般形式 

 

一般形式 

 

f(表達(dá)式)語(yǔ)句1 

 

[else語(yǔ)句2] 

 

if語(yǔ)句中的表達(dá)式可以是關(guān)系表達(dá)式、邏輯表達(dá)式,甚至還可以是數(shù)值表達(dá)式。 

 

語(yǔ)句1和語(yǔ)句2可以是一個(gè)簡(jiǎn)單的語(yǔ)句,也可以是一個(gè)復(fù)合語(yǔ)句,還可以是其他的if嵌套。 

 

c語(yǔ)言if語(yǔ)句最常見(jiàn)的3種形式

 

1、沒(méi)有else子句部分

 

if(表達(dá)式)語(yǔ)句1 

 

2、有else子句部分 

 

if(表達(dá)式)

 

語(yǔ)句1

 

else

 

語(yǔ)句2 

 

3、在else部分又嵌套多層的if語(yǔ)句 

 

if(表達(dá)式1)語(yǔ)句1 

 

else if(表達(dá)式2)語(yǔ)句2 

 

else if (表達(dá)式3)語(yǔ)句3 

 

...... 

 

語(yǔ)句1、語(yǔ)句2.....語(yǔ)句m等是if語(yǔ)句中的“內(nèi)嵌語(yǔ)句”,它們是if語(yǔ)句中的一部分。 

 

if語(yǔ)句注意事項(xiàng):整個(gè)if語(yǔ)句可以寫在多行上,也可以寫在一行上。if語(yǔ)句無(wú)論寫在幾行上,都是一個(gè)整體,屬于同一語(yǔ)句。內(nèi)嵌語(yǔ)句也可以是一個(gè)if語(yǔ)句。在if語(yǔ)句中要對(duì)給定的條件進(jìn)行檢查,判斷所給定的條件是否成立。 

 

c語(yǔ)言switch多分支語(yǔ)句 

 

如果分支較多,嵌套的if語(yǔ)句層數(shù)多,程序繁長(zhǎng)而且可讀性降低,因?yàn)閏語(yǔ)言提供switch語(yǔ)句直接處理多分支選擇。 

 

一般形式 

 

switch(表達(dá)式) 

 

 

case 常量1:語(yǔ)句1 

 

case 常量2:語(yǔ)句2 

 

..... 

 

case 常量n:語(yǔ)句n 

 

default:語(yǔ)句n+1

 

 

例:#define _CRT_SECURE_NO_WARNINGS //忽略安全檢測(cè),不然使用scanf會(huì)報(bào)錯(cuò) 

 

#include<stdio.h>//頭文件 

 

int main()//主函數(shù)

 

{

 

char grade;//定義成績(jī)級(jí)別字符變量 

 

printf("輸入成績(jī)級(jí)別:");//提示語(yǔ)句 

 

scanf("%c", &grade);//鍵盤輸入

 

printf("成績(jī)段:");//提示語(yǔ)句 

 

switch (grade)//switch 多分支 

 

 

case'A':printf("85-100\n"); break;//輸出A的成績(jī)分布

 

case'B':printf("70-84\n"); break;//輸出B的成績(jī)分布 

 

case'c':printf("60-69\n"); break;//輸出C的成績(jī)分布 

 

case'D':printf("不及格小于60\n");//輸出D的成績(jī)分布

 

default:printf("輸入成績(jī)等級(jí)有誤\n");//輸出成績(jī)級(jí)別有誤 

 

 

return 0;//函數(shù)返回值為0

 

 

switch多分支注意事項(xiàng):

 

1、switch后面括號(hào)內(nèi)的“表達(dá)式”,其值的類型應(yīng)為整數(shù)類型,包括字符型。

 

2、switch下面的花括號(hào)內(nèi)是一個(gè)復(fù)合語(yǔ)句。

 

3、可以沒(méi)有default標(biāo)號(hào),此時(shí)如果沒(méi)有與switch表達(dá)式相匹配的case常量,則不執(zhí)行任何語(yǔ)句,流程轉(zhuǎn)到switch語(yǔ)句的下一個(gè)語(yǔ)句。

 

4、各個(gè)case標(biāo)號(hào)出現(xiàn)的次序不影響執(zhí)行結(jié)果,case標(biāo)號(hào)只起標(biāo)記作用。

 

5、每一個(gè)case常量必須互不相同。

 

6、在case子句中雖然包含了一個(gè)以上執(zhí)行語(yǔ)句,但可以不必用花括號(hào)括起來(lái),會(huì)自動(dòng)順序執(zhí)行本case標(biāo)號(hào)后面所以的語(yǔ)句。 

 

C語(yǔ)言while語(yǔ)句 

 

一般形式:while(表達(dá)式)語(yǔ)句

 

注意事項(xiàng):

 

1、其中的語(yǔ)句就是循環(huán)體,可以是一個(gè)簡(jiǎn)單的語(yǔ)句,也可以是符復(fù)合語(yǔ)句。執(zhí)行循環(huán)體的次數(shù)是由循環(huán)條件控制的,這個(gè)循環(huán)條件就是上面一般形式中的“表達(dá)式”,也稱為循環(huán)條件表達(dá)式。

 

2、while循環(huán)可以簡(jiǎn)單的記為,只要當(dāng)循環(huán)條件表達(dá)式為真(即給定的條件成立),就執(zhí)行循環(huán)體語(yǔ)句。

 

3、while循環(huán)特點(diǎn)是:先判斷條件表達(dá)式,后執(zhí)行循環(huán)體語(yǔ)句。

 

例:#include<stdio.h>//頭文件

 

int main()//主函數(shù) 

 

{

 

int num;

 

num = 15; 

 

while (num > 10)//循環(huán)條件 

 

{

 

num--; 

 

printf("%d\n", num);

 

}//循環(huán)體 

 

 

c語(yǔ)言do while介紹

除了while語(yǔ)句以外,c語(yǔ)言還提供了do...while語(yǔ)句來(lái)實(shí)現(xiàn)循環(huán)。

一般形式:

do 

語(yǔ)句

while  (表達(dá)式)

例:#include<stdio.h>//頭文件 

int  main()//主函數(shù) 

int num;//定義整型變量 

num = 15;//給num賦值15 

do//關(guān)鍵詞do

{

num--; 

printf("%d\n", num); 

} while (num > 10);//先運(yùn)行第8行和第9行的代碼然后再判斷num是否大于10如果符合條件的話會(huì)繼續(xù)執(zhí)行第8行和第9行的代碼(dowhile語(yǔ)句一定要有一個(gè)分號(hào)結(jié)束) 

}

c語(yǔ)言for語(yǔ)句介紹 

除了可以用while語(yǔ)句和do.....while語(yǔ)句實(shí)現(xiàn)循環(huán)外,c語(yǔ)言還提供for語(yǔ)句實(shí)現(xiàn)循環(huán) 

指針(一般用%x十六進(jìn)制輸出) 

直接訪問(wèn):通過(guò)變量名直接訪問(wèn)地址

間接訪問(wèn):把變量的地址放到另一個(gè)變量中,使用時(shí)先找到后者的地址,從中取出前者的地址

指針變量:存放地址的變量

struct是自定義結(jié)構(gòu)體(sizeof是一個(gè)計(jì)算結(jié)構(gòu)類型所占內(nèi)存字節(jié)數(shù)的關(guān)鍵字)

strcpy是字符串拷貝 

常用內(nèi)存管理函數(shù)有分配內(nèi)存空間函數(shù)malloc 、calloc釋放內(nèi)存空間函數(shù)free

動(dòng)態(tài)內(nèi)存分配函數(shù)

void*malloc(unsigned size)

功能:在內(nèi)存的動(dòng)態(tài)存貯區(qū)(堆)中分配一塊長(zhǎng)度為size的連續(xù)空間。 

返回值:指針,存放被 分配內(nèi)存的起始地址。若未申請(qǐng)地址,則返回null(0)。 

void*:指向任何類型的數(shù)據(jù),在使用時(shí),要進(jìn)行強(qiáng)制類型轉(zhuǎn)換。 

例如:(int*)malloc(sizeof(int)) 

(struct student*)malloc(sizeof(struct student)) 

sizeof是一個(gè)運(yùn)算符作用是計(jì)算需要分配的空間的字節(jié)數(shù) 

void free(void*ptr) 

功能:釋放由malloc()申請(qǐng)的動(dòng)態(tài)內(nèi)存空間,ptr存放該空間的首地址。

返回值:無(wú)。

p=(struct student*)malloc(sizof(struct student));

...... 

free(p); 

實(shí)踐才能把知識(shí)變成技能,堅(jiān)持才有沉淀。 

上一篇:Linux和C語(yǔ)言的學(xué)習(xí)方法你真的知道嗎?

下一篇:嵌入式學(xué)習(xí)經(jīng)驗(yàn)貼看這一篇就夠了!

熱點(diǎn)文章推薦
華清學(xué)員就業(yè)榜單
高薪學(xué)員經(jīng)驗(yàn)分享
熱點(diǎn)新聞推薦
前臺(tái)專線:010-82525158 企業(yè)培訓(xùn)洽談專線:010-82525379 院校合作洽談專線:010-82525379 Copyright © 2004-2024 北京華清遠(yuǎn)見(jiàn)科技發(fā)展有限公司 版權(quán)所有 ,京ICP備16055225號(hào)-5京公海網(wǎng)安備11010802025203號(hào)

回到頂部

主站蜘蛛池模板: 国产成人免费观看 | 秋霞特色大片18入口私人高清 | 久久精品国产亚洲精品2020 | 免费日比视频 | 欧美多人性受xxxx喷水 | 波多野结衣中文字幕一区二区三区 | 99国产成人高清在线视频 | 亚洲va久久久噜噜噜久久天堂 | 日本不卡视频在线视频观看 | 日本高清不卡一区久久精品 | 九九九网站 | 日韩黄色片视频 | 欧美巨大xxxx做受孕妇视频 | 国产精品扒开做爽爽爽的视频 | 欧美伊人影院 | 日韩在线免费视频观看 | 久操免费视频 | 日本网站黄色 | 手机看片日韩日韩国产在线看 | 人人成人免费公开视频 | 欧美日韩亚洲一区二区三区在线观看 | 麻豆果冻传媒新剧国产短视频 | 国产成人青青热久免费精品 | 久久免费小视频 | 日本一区三区 | 欧美日韩综合在线视频免费看 | 韩国三级观影久久 | 好姑娘免费高清视频 | 欧美亚洲国产精品久久高清 | 黄色片视频免费 | 久草福利在线观看 | 日本黄在线观看免费播放 | 999精品视频在线 | 美女被免费网站在线视频免费 | 精品在线视频一区 | 欧美一区二区三区影院 | 免费一级大片儿 | a级全黄| 欧美视频一区二区在线观看 | 国产精品福利片 | 欧美午夜视频一区二区三区 |