C語言知識點歸納 c語言知識點總結pdf大全

            網絡整理 分享 時間: 收藏本文

            C語言知識點歸納 c語言知識點總結pdf大全

            總結是在一段時間內對學習和工作生活等表現加以總結和概括的一種書面材料,它可以促使我們思考,我想我們需要寫一份總結了吧。怎樣寫總結才更能起到其作用呢?總結應該怎么寫呢?下面是我給大家整理的總結范文,歡迎大家閱讀分享借鑒,希望對大家能夠有所幫助。

            C語言知識點歸納 c語言知識點總結pdf篇一

            c語言作為一門非常適合編程入門的語言,打好基礎的重要性不言而喻。下面整理了一些c語言知識點,希望對大家有所幫助!

            int *p只能指向int類型的數據

            指針變量只能存儲地址

            指針變量未經初始化不要拿來間接訪問其他存儲空間

            遍歷數組

            int ages[5] = {10, 4, 9, 44, 99};

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

            {

            printf("%d", ages[i]);

            }

            使用指針遍歷數組:

            int *p;

            // 指針變量p指向了數組的首地址

            p = &ages[0];

            // 使用指針遍歷數組

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

            {

            printf("ages[%d] = %d", i, *(p + i));

            }

            注:指針+ 1取決于指針的類型

            注:數組的訪問方式

            數組名[下標]

            指針變量名[下標]

            *(p + i)

            宏定義

            條件編譯

            文件包含

            1、宏定義的配對使用和帶參數的宏:

            #define

            ...

            #undef

            帶參數的宏:

            #define sum(v1,v2) ((v1) + (v2))//括號是必須的

            例如:

            #define pingfang(a) a*a

            #define pingfang(a) (a*a)

            調用時

            pingfang(10)/pingfang(2)//不正確

            pingfang(5+5)//不正確

            帶參數的宏效率比函數高

            2、條件編譯(一般是判斷宏的.值)

            #if 條件

            ...

            #elif 條件

            ...

            #else

            ...

            #endif(非常重要)不然后面的代碼全部無效

            3、文件包含:

            <>表示系統自帶的文件,""表示自定義文件

            不允許循環包含,比如a.h包含b.h,b.h又包含a.h

            struct student{

            int age;

            char *name;

            };

            typedef struct student student;

            等價于

            typedef struct student{

            int age;

            char *name;

            }student;

            也等價于

            typedef struct {

            int age;

            char *name;

            }student;

            類似的給枚舉類型起名

            typedef enum sex

            {

            man,women

            }sex;

            下面這種情況的寫法比較特殊

            //下面是函數指針類型的自定義數據類型,返回值類型和參數類型要匹配

            #include

            typedef int (*typefuncpointer)(int, int);

            int add(int a, intb)

            {

            return a + b;

            }

            int minus(int a, intb)

            {

            return a - b;

            }

            int main()

            {

            typefuncpointer p = add;//使用自定義類型?

            typefuncpointer p2 = minus;//使用自定義類型?

            printf("add = %d",p(1, 2));

            printf("minus = %d",p2(1, 2));

            return 0;

            }

            下面是定義結構體的指針類型

            typedef struct student{

            int age;

            char *name;

            }*ptrstu;

            //使用方式

            student stu ={18, "zhangsan"};

            ptrstu p = &stu;

            宏定義也是可以為類型起名的

            #define integer int

            相當于

            typedef int integer

            注意和typedef的區別

            例如:

            typedef char * string

            #define string2char *

            ①.函數

            ②.變量

            1、對函數的作用:

            外部函數:定義的函數能被本文件和其他文件訪問

            內部函數:定義的函數只能被本文件訪問

            默認情況下,所有函數都是外部函數(相當于帶關鍵字extern),所以可以省略

            extern作用:

            完整的定義和引用一個外部函數都加extern

            引用時也是默認是外部函數所以也省略extern

            static作用:定義一個內部函數

            使用:static返回類型函數名(參數列表)

            不能被其他文件調用

            一個項目中,本文件的外部函數名不能和其他文件的外部函數同名(error)

            本文件中的內部函數(static)可以和其他文件的函數名同名的

            2、對變量的作用:

            全局變量分為兩種:

            外部變量:定義的變量可以被其他文件訪問

            ①.默認情況下所有的全局變量都是外部變量

            ②.不同文件中的同名外部變量都代表同一個

            ③.定義一個外部變量不加extern,聲明才加extern

            同樣的聲明是沒有錯誤的

            內部變量:定義的變量不能被其他文件訪問

            不同文件的同名內部變量互不影響

            定義字符串的兩種方式:

            1、利用數組

            char name[] = “andyzhao”

            特點:字符串里的字符可以修改

            適用場合:字符串內容需要經常修改

            2、利用指針

            char *name = “itcast”

            特點:字符串是一個常量,字符串里面的字符不能修改

            使用場合:字符串的內容不需要修改,而這個字符串經常使用

            s("content_relate");

            【c語言知識點集錦】相關文章:

            c語言基礎知識點集錦

            01-28

            c語言數組知識點總結

            10-05

            c語言知識點及其簡單應用

            10-02

            c語言for循環

            09-27

            c語言中那些被忽略的知識點

            10-02

            c語言二維數組知識點介紹

            10-28

            怎樣學習c++c語言編程

            10-23

            assert用法(c語言)

            11-24

            c語言程序介紹

            11-24

            主站蜘蛛池模板: 国产精品亚洲不卡一区二区三区 | 精品亚洲AV无码一区二区| 人妻无码久久一区二区三区免费| 国产精品视频一区麻豆| 中文无码AV一区二区三区| 国产怡春院无码一区二区| 久久久91精品国产一区二区| 一区二区三区免费高清视频| 无码人妻一区二区三区av| 久久精品国产一区| www.亚洲一区| 日韩在线一区二区三区视频| 99精品国产一区二区三区不卡 | 精品国产免费一区二区| 制服丝袜一区在线| 国产亚洲一区二区三区在线观看 | 无人码一区二区三区视频| 精品国产一区二区三区www| 肉色超薄丝袜脚交一区二区| 欧洲精品无码一区二区三区在线播放| 波多野结衣一区在线| 色婷婷av一区二区三区仙踪林| 亚洲视频一区在线观看| 蜜臀Av午夜一区二区三区| 国产在线一区二区三区| 国产亚洲自拍一区| 狠狠做深爱婷婷综合一区 | 亚洲一区AV无码少妇电影☆| 日韩精品一区二区三区中文字幕 | 一区高清大胆人体| 中文字幕一区二区人妻| 国产午夜毛片一区二区三区| 538国产精品一区二区在线| 精品国产亚洲一区二区在线观看 | 视频一区二区中文字幕| 国产成人免费一区二区三区| 99国产精品欧美一区二区三区| 亚洲欧美成人一区二区三区| 欧美日韩精品一区二区在线视频| 日韩最新视频一区二区三| 欧美日韩综合一区二区三区|