C语言学习心得

一、   集成开发环境(IDE)

预编译---汇编---编译---链接---运行

二、   导入头文件

1、什么情况下需要导入头文件:需要用到外部提供的一些函数或者变量

2、导入头文件的区别

< > 导入系统自带的库 头文件 告诉编译器首先从系统类库里面去查找这个头文件,如果类库里面没有那么从当前这个工程文件里面查找

 " "导入自己写的头文件 告诉编译器先从当前这个工程里面去查找 如果没有 那么再去系统类库里面去查找

三、关键字、常量、变量

1、关键字:int const  char return float double long exit

     有特殊的含义 在定义变量的时候不能用关键字来当变量名

2、变量 常量:  程序在执行过程中有些数据或者资源需要被长时间记录 就     需要定义一个变量或者常量来保存它

定义一个变量:系统会立刻分配内存

声明一个变量:不会立刻分配内存 当使用这个变量的时候才去分配内存

3、变量的作用域:从定义开始到‘}’;变量在同一个作用域里不能被重复定义

      临时变量(局部变量)  

      全局变量

四、if else 与switch case

1、if(判断条件){

        表达式;

        } else{

         表达式;

        }

 

 

  2. switch(整型或字符型){

case值1:语句1 break;

case值2:语句2 break;

...

default:语句N break;

 

}

五、循环

  1.  for ( [表达式 1]; [表达式2 ]; [表达式3] ){

语句

}

其中:

表达式1:一般为赋值表达式,给控制变量赋初值;

[if !vml]

[endif]for语句

表达式2:关系表达式或逻辑表达式,循环控制条件;

表达式3:一般为赋值表达式,给控制变量增量或减量;

语句:循环体,当有多条语句时,必须使用复合语句。

2. while(表达式){

  语句;

   }

3. do{

语句;}

while(表达式);

注意:continue:结束此次循环,继续下一次循环

     break:直接跳出当前循环

六、数组

1、数组和简单变量的区别:

    简单变量:只能存储一个数据

    数组:  能够存储多个数据

             同种类型的数据

2、定义数组:必须明确知道数组里面有多少个元素

    int score[4] = {}; //0 0 0 0

    int score2[] = {1,2,3,4}; // 1 2 3 4

    int score3[4] = {1, 2}; // 1 2 0 0

3、数组的访问:下标访问;指针访问

4.  数组的数组名表示的是:数组的首地址

七、结构体

typedefstruct stu {

    char name;

    char dd;

    int age;

    long id;

}Student;

将多个不同类型的数据封装为一种类型

八、宏定义

#define

k字符串 要替换的内容(可以是一个值 也可以是一个表达式【表达式加()】)

 1.给一个值赋一定的意义-1 kOUT

 2.在程序运行、调试的时候 更方便了 如果要更改某一个值  只需要在define这一个地方改就可以了

九、枚举

typedefenum UnlockType {

    kUnlockTypeSlide = 1,//默认从0开始

    kUnlockTypePIN,//2

    kUnlockTypeGraph,//3

}kUnlockType;

十、函数

        完成特定功能的一个代码块

        一个函数只做一件事儿

 1.函数的声明

 2.函数的实现

先声明后实现

声明和实现一起写 必须在调用者上方

十一、动态分配内存

1、为什么需要动态分配内存?

     优点:在使用之前已经确保内存是存在的

     缺点:大小固定了 浪费空间||空间不足

 2、 定义一个指针变量 系统只是为这个变量本身分配了内存空间

       暂时没有指向任何数据

      不能存储数据 因为没有内存来存储

 3、过程:

     (1) 分配内存空间malloc(内存空间的大小(字节))

     (2)必须判断分配内存是否成功

     (3)realloc重新分配内存空间

     (4)free释放内存空间

 

posted @ 2018-07-24 20:18  霜空  阅读(164)  评论(0编辑  收藏  举报