0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

適合C語言小白看的基礎知識梳理總結

j4AI_wujianying ? 來源:cg ? 2019-01-04 11:07 ? 次閱讀

C語言是當代人學習及生活中的必備基礎知識,應用十分廣泛,下面為大家?guī)鞢語言基礎知識梳理總結,C語言零基礎入門絕對不是天方夜譚!

算法結構:

一、順序結構、選擇結構、循環(huán)結構;二、循環(huán)結構又分為while型、until型、for循環(huán)結構;程序流程圖;

結構化程序設計方法:

(1)自頂向下;(2)逐步細化;(3)模塊化設計;(4)結構化編碼。

數(shù)據(jù)類型:

常量:常量包括字面常量、直接常量和符號常量;

變量:C語言規(guī)定標志符只能由字母、數(shù)字和下劃線三種字符組成,且第一個字符必須是字母或者下劃線;必須壓迫先定義后使用;每一個變量被定義以確定類型后,在編譯時就能為其分配相應的存儲單元;

整數(shù)類型:整數(shù)常量有十進制、八進制和十六進制;“%d”

整形變量:數(shù)據(jù)在內(nèi)存中存放形式是以二進制形式存放;有int型、short int型和long int型,無符號整型變量的范圍是-32768—32767,有符號型為0~65535.通常把long定義為32位,把short定義為16位,int可以是32位也可以為16位,這都主要取決于機器字長。

實型常量的表示方法:(1)十進制,0.0;(2)指數(shù)形式,123e3

實型變量:實數(shù)型數(shù)據(jù)在內(nèi)存中的存放形式,一般在內(nèi)存中占4個字節(jié),分成整數(shù)部分和小數(shù)部分存放。實型變量分為float型、double型long double型。實型數(shù)據(jù)會存在舍入誤差。

實型常量的類型:C編譯系統(tǒng)將實型常量作為雙精度來處理。

字符型數(shù)組:(一)字符常量:轉義字符(\n——換行,\t——tab,\r——回車,\f——換頁,\b——退格,\ddd——1到3位8進制的數(shù)代表的字符)

(二)字符變量:字符數(shù)據(jù)存儲形式實際是以ASCII碼存儲?!?c”

字符串常量:雙撇號括起來的一系列字符序列。

C的運算符有以下幾種:

1、算術運算符(+ - * / %)結合方向自左向右

2、關系運算符(> < == >= <= !=)

3、邏輯運算符(! && ||)

4、位運算符(<< >> ~ | ^ &)

5、賦值運算符(=及符號擴展賦值運算符)

6、條件運算符(? : )

7、逗號運算符( , )

8、指針運算符(* &)

9、求字節(jié)運算符(sizeof)

10、強制類型轉換運算符((類型))

11、分量運算符( . ->)

12、下標運算符([])

13、其他

控制語句:

完成一定的控制功能。

1、if()~else~

2、for()~

3、while()~

4、do~while()

5、continue

6、break

7、switch

8、goto

9、return

字符數(shù)據(jù)的輸入輸出:

1、putchar()輸入字符變量

2、getchar()只能接受一個字符

格式輸入輸出:

1、printf(%d—整型,%c—字符型,%ld,%md,%o,%u,%s,%-m.nf,%e,%g)

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

數(shù)組

一維數(shù)組的定義:類型說明符 數(shù)組名【常量表達式】;先定義后引用;一維數(shù)組初始化時可以只對一部分元素初始化,在對全部數(shù)組元素初始化的時候可以部規(guī)定長度;但是若被定義的數(shù)組長度與提供的初始值不一樣時,則數(shù)組長度不能省略。

二維數(shù)組的定義:類型說明符 數(shù)組名【常量表達式】【常量表達式】C語言中存放二維數(shù)組是先存放第一行的元素,緊接著是第二行,其實也是以一維的方式存放。如果初始化時能指定所有元素的初始值,第一維大小可以省略,但是第二維不能省略。

字符數(shù)組:定義和初始化跟數(shù)組差不多,只是需要加單引號。字符和字符串結束標志,C語言規(guī)定,以‘\0’代表。

字符串處理函數(shù):

1、puts()將一個字符串輸出到終端

2、gets()從終端輸入一個字符串到字符數(shù)組,并且得到一個函數(shù)值。

3、strcat()鏈接兩個字符數(shù)組中的字符串。

4、strcpy()字符串復制函數(shù)。

5、strcmp()比較字符串作用。

6、strlen()測試字符串長度的函數(shù)不包括“\0”

7、strlwr()將字符串中的大寫字母轉換為小寫字母。

8、strupr()將字符串中的小寫字母轉換為大寫字母。

函數(shù)

(1)一個源程序由多個函數(shù)組成。

(2)C程序的執(zhí)行從main()函數(shù)開始;

(3)所有函數(shù)都是平行的;

(4)函數(shù)分類;可以分為標準和自定義,還可以分為有參函數(shù)和無參函數(shù)。

函數(shù)定義的一般形式:

(1)類型標志符 函數(shù)名()

{

聲明部分

語句

}

(2)類型標志符 函數(shù)名(形式參數(shù)列表)

{

聲明部分

語句

}

關于形參和實參的說明:

(1) 在定義函數(shù)中指定的形參,在未出現(xiàn)函數(shù)調(diào)用時,他們并不占用內(nèi)存中的存儲單元,只有發(fā)生調(diào)用時,才會分配內(nèi)存。

(2) 實參可以是常量、變量或者表達式;有時傳遞的時地址;

(3) 在被定義中,形參必須指定類型;

(4) 實參與形參的類型應相同或賦值兼容;

(5) C語言規(guī)定,實參變量對形參變量的數(shù)據(jù)傳遞是“值傳遞”,即單向傳遞,只有實參傳遞給形參,而不能由形參傳遞給實參。

函數(shù)的返回值:

希望通過函數(shù)調(diào)用使主調(diào)函數(shù)得到一個確定的值。(1)函數(shù)的返回值是通過函數(shù)中的return語句獲取的。(2)函數(shù)值的類型;(3)如果函數(shù)值的類型和return語句中表達式的值不一樣,則以函數(shù)類型為準。(4)如果調(diào)用函數(shù)中沒有return語句,并不帶回一個確定的用戶需要的值,函數(shù)不是不帶回值,而只是不帶回有用的值,帶回一個不確定的值。(5)如不需要帶回任何值,用void。

函數(shù)的調(diào)用:

調(diào)用方式1、函數(shù)語句;2、函數(shù)表達式;3、函數(shù)參數(shù)。

被調(diào)用的函數(shù)的聲明:

一個函數(shù)調(diào)用另一個函數(shù)所具備的條件:

1、首先被調(diào)用的函數(shù)必須是已經(jīng)存在的函數(shù);

2、如果使用庫函數(shù),一般應該在本文件開頭用#include命令將調(diào)用有關庫函數(shù)時在所需要用到的信息“包含”到本文件中。.h文件是頭文件所用的后綴。

3、如果使用用戶自己定義的函數(shù),而且該函數(shù)與使用它的函數(shù)在同一個文件中,一般還應該在主調(diào)函數(shù)中對被調(diào)用的函數(shù)做聲明。

4、如果被調(diào)用的函數(shù)定義出現(xiàn)在主調(diào)函數(shù)之前可以不必聲明。

5、如果已在所有函數(shù)定義之前,在函數(shù)的外部已做了函數(shù)聲明,則在各個主調(diào)函數(shù)中不必多所調(diào)用的函數(shù)在做聲明。

局部變量和全局變量:

(一)局部變量在一個函數(shù)內(nèi)部定義的變量是內(nèi)部變量,它只是在本函數(shù)范圍內(nèi)的有效,主函數(shù)也不能使用其它函數(shù)中定義的變量;不同函數(shù)中可以使用相同的名字的變量,他們代表不同的對象,互不干擾;形式參數(shù)也是局部變量;在一個函數(shù)內(nèi)部,可以在復合語句中定義變量,這些變量只在本復合語句中有效,這種復合句也可以稱為“分程序”或“程序塊”;(二)全局變量,在函數(shù)之外定義的變量稱為外部變量,全局變量可以增加函數(shù)間數(shù)據(jù)聯(lián)系的渠道,一般不再必要時不要使用,他在程序的全部執(zhí)行過程中占用存儲單元,是函數(shù)的通用性,使用全局變量會使程序的清晰性降低。還要注意若果同一源文件中,外部變量和局部變量同名,則在局部變量作用范圍內(nèi),外部變量被“屏蔽”,不起任何作用。

變量的存儲類別:

(變量值存儲時間)動態(tài)存儲方式,在程序運行期間進行分動態(tài)的分配存儲空間的方式,靜態(tài)存儲方式是指在程序運行期間分配固定的存儲空間的方式;存儲空間分為程序區(qū)、靜態(tài)存儲區(qū)和動態(tài)存儲區(qū);全局變量全部放在靜態(tài)存儲區(qū)中,程序開始時分配空間,完畢時釋放;動態(tài)存儲區(qū)中存放以下數(shù)據(jù):1、函數(shù)形式參數(shù);2、自動變量;3、函數(shù)調(diào)用時的現(xiàn)場保護和返回地址;在C語言中每個變量和函數(shù)都有兩個屬性,是數(shù)據(jù)類型和數(shù)據(jù)存儲類型,存儲類別是數(shù)據(jù)在內(nèi)存中存儲的方式。

存儲方式分為靜態(tài)和動態(tài)存儲類,具體包含有四種:自動的(auto),靜態(tài)的(static),寄存器的(register),外部的(extern),如果不加以聲明,就自認為是auto型就會自動分配存儲空間屬于動態(tài)存儲方式。Static聲明局部變量是在函數(shù)調(diào)用結束后不消失而保留原值,即占用存儲單元不釋放,在下一次調(diào)用該函數(shù)時,該變量已有值,就是上次函數(shù)調(diào)用結束時的值。其中需要說明的是在定義局部變量不賦初值的話,則靜態(tài)局部變量編譯時自動賦值為0或者空字符,雖然靜態(tài)局部變量在函數(shù)調(diào)用結束后仍然存在,但是其他函數(shù)不能引用它的。靜態(tài)局部變量主要用在當初始化后,變量只是被引用而不改變其值。Register變量是C語言中允許將局部變量的值放在CPU中的寄存器中需要時直接從寄存器中取出來參加運算,不必再到內(nèi)存中提取,但是計算機系統(tǒng)中寄存器數(shù)量有限,不能任意定義任意多的存儲器,局部靜態(tài)變量不能定義為寄存器變量。Extern聲明外部變量,用以擴展外部變量的作用域。

在一個文件中,如果定義之前的函數(shù)想引用該外部變量,則應該在引用之前用關鍵字extern對該變量做外部變量聲明。在多文件中,也可以采用extern聲明的辦法進行外部變量聲明。有時希望某些局部變量只限于被本文件引用,而不能被其他文件引用,這時就可以采用在定義外部變量時外加一個static,這在程序模塊化設計中加強了通用性。Static來聲明一個變量的作用有二個,一個是在聲明對局部變量時。則為該變量分配的空間在整個程序執(zhí)行期間始終存在;一個是在對全局變量聲明中,該變量的作用域僅限于本文件模塊操作。注意:這些方法同樣適用于函數(shù)的聲明

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 存儲
    +關注

    關注

    13

    文章

    4411

    瀏覽量

    86465
  • C語言
    +關注

    關注

    180

    文章

    7618

    瀏覽量

    138702

原文標題:C語言基礎知識梳理總結,0基礎的小伙伴看一下

文章出處:【微信號:wujianying_danpianji,微信公眾號:單片機精講吳鑒鷹】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    C語言基礎知識科普

    C語言是單片機開發(fā)中的必備基礎知識,本文列舉了部分STM32學習中比較常見的一些C語言基礎知識。
    發(fā)表于 07-21 10:58 ?1973次閱讀

    STM32單片機中的C語言基礎知識

    C語言是單片機開發(fā)中的必備基礎知識,本文列舉了部分STM32學習中比較常見的一些C語言基礎知識。
    發(fā)表于 09-21 17:21 ?4696次閱讀

    C語言基礎知識(5)--循環(huán)語句

    C語言基礎知識(5)--循環(huán)語句
    的頭像 發(fā)表于 06-15 10:18 ?2616次閱讀
    <b class='flag-5'>C</b><b class='flag-5'>語言</b><b class='flag-5'>基礎知識</b>(5)--循環(huán)語句

    c語言基礎知識

    c語言基礎知識
    發(fā)表于 08-17 17:03

    關于C語言基礎知識總結的太棒了

    關于C語言基礎知識總結的太棒了
    發(fā)表于 10-15 07:57

    C語言基礎知識的樹狀結構是如何組成的

    該圖是關于C語言基礎知識的樹狀結構圖,也許里面有些地方看起來不夠主流,但是可能更合理。以后將會對該圖的所有細節(jié)知識點以通俗易懂的方式逐個梳理
    發(fā)表于 11-08 07:39

    C語言基礎知識匯總

    單片機-C語言基礎知識總結本文為個人學習筆記,僅供學習參考用,如有侵權,請聯(lián)系zhankun3280@139.com(一)簡單理解32位操作系統(tǒng)只能支持4G內(nèi)存(二)數(shù)據(jù)類型(?表示重
    發(fā)表于 01-24 07:28

    C++語言基礎知識講解

    C++語言基礎知識講解,喜歡的朋友可以下載來學習。
    發(fā)表于 01-14 15:30 ?22次下載

    C語言程序設計的基礎知識資料總結免費下載

    本文檔的主要內(nèi)容詳細介紹的是C語言程序設計的基礎知識資料總結免費下載主要內(nèi)容包括了:1 簡單C語言
    發(fā)表于 01-10 08:34 ?21次下載
    <b class='flag-5'>C</b><b class='flag-5'>語言</b>程序設計的<b class='flag-5'>基礎知識</b>資料<b class='flag-5'>總結</b>免費下載

    C語言基礎知識講解

    C語言基礎知識講解
    發(fā)表于 05-19 17:39 ?14次下載

    嵌入式C語言基礎知識梳理

    該圖是關于C語言基礎知識的樹狀結構圖,也許里面有些地方看起來不夠主流,但是可能更合理。以后將會對該圖的所有細節(jié)知識點以通俗易懂的方式逐個梳理
    發(fā)表于 11-03 14:06 ?13次下載
    嵌入式<b class='flag-5'>C</b><b class='flag-5'>語言</b><b class='flag-5'>基礎知識</b><b class='flag-5'>梳理</b>

    單片機-C語言基礎知識總結

    單片機-C語言基礎知識總結本文為個人學習筆記,僅供學習參考用,如有侵權,請聯(lián)系zhankun3280@139.com(一)簡單理解32位操作系統(tǒng)只能支持4G內(nèi)存(二)數(shù)據(jù)類型(?表示重
    發(fā)表于 11-29 09:51 ?18次下載
    單片機-<b class='flag-5'>C</b><b class='flag-5'>語言</b><b class='flag-5'>基礎知識</b><b class='flag-5'>總結</b>

    單片機C語言基礎知識

    單片機C語言基礎知識
    發(fā)表于 10-08 09:30 ?7次下載

    STM32中C語言基礎知識

    C語言是單片機開發(fā)中的必備基礎知識,本文列舉了部分STM32學習中比較常見的一些C語言基礎知識
    的頭像 發(fā)表于 04-27 17:42 ?1407次閱讀
    STM32中<b class='flag-5'>C</b><b class='flag-5'>語言</b>的<b class='flag-5'>基礎知識</b>

    C++語言基礎知識

    電子發(fā)燒友網(wǎng)站提供《C++語言基礎知識.pdf》資料免費下載
    發(fā)表于 07-19 10:58 ?8次下載