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

            主站蜘蛛池模板: 无码人妻精一区二区三区 | 日韩社区一区二区三区| 99精品国产高清一区二区| 国产在线观看精品一区二区三区91| 国产精品日韩一区二区三区 | 一本大道东京热无码一区| 国产裸体舞一区二区三区| 老熟妇仑乱一区二区视頻| 任你躁国产自任一区二区三区| 波多野结衣一区二区三区88| 亚洲av日韩综合一区二区三区| 亚洲Av高清一区二区三区| 亚洲伦理一区二区| 亚洲AV综合色区无码一区爱AV| 亚洲一区二区三区在线视频| 日本精品一区二区三区在线视频一| 亚洲综合色一区二区三区| 3d动漫精品啪啪一区二区中文 | 一区二区三区四区无限乱码| 国产日韩精品一区二区三区| 国产精品电影一区| 在线观看视频一区二区| 国精产品999一区二区三区有限 | 亚洲AV网一区二区三区| 深田咏美AV一区二区三区| 无码aⅴ精品一区二区三区| eeuss鲁片一区二区三区| 暖暖免费高清日本一区二区三区| 精品国产一区二区三区久| 日韩在线视频一区| 精品国产免费观看一区| 波多野结衣中文字幕一区二区三区| 国产一区中文字幕在线观看| 国产一区二区视频免费| 一本岛一区在线观看不卡| 日韩人妻无码一区二区三区| 无码乱人伦一区二区亚洲一 | 精品一区二区三区在线播放 | 亚洲一区二区观看播放| 国产怡春院无码一区二区| 一区三区三区不卡|