IOS开发之路-C 学习笔记7.18

7.18               星期4


上节回顾:

while循环和do..while循环 的区别?

while循环是先判断后执行,do..while是先执行一次后判断.且do...while

至少循环一次.

break的作用:跳出switch 语句,跳出与自己最近的一次循环

continue的作用:跳出本次循环,执行下次循环.

常量区(不允许修改),栈区(一般存放局部变量),堆区(一般是手动申请,动态分配),代码区(主要用来存放代码)

常量分为:

直接常量

命名常量(const)

使用const进行常量定义, 之后不再允许修改例

const  int const = 10;

count  = 20;(编译出错)


使用宏定义常量

#define PI 3.1415
写在main函数外面,好处:一处修改,便于修改和维护

为什么使用枚举

提高代码可读性
便于程序维护
枚举定义使用enum
枚举的值:
enum weekday{
mon =  10, tue = 20, wed = 30, thu = 40 , sat = 60 , sum = 70 
};
未指定项 后一项参照前一项加1
枚举示例:
#include <stdio.h>

enum Weekday {
    mon = 1,
    tue = 2,
    wed = 3,
    thu,
    fri,
    sat,
    sun,
    };
int main(int argc, const char * argv[])
{
    int date = 0;
    printf("Please input date:");
    scanf("%d",&date);
    switch (date) {
        case mon:
            printf("%d",mon);
            break;
        case tue:
            printf("%d",tue);
            break;
        case wed:
            printf("%d",wed);
            break;
        case  thu:
            printf("%d",thu);
            break;
        case fri:
            printf("%d",fri);
            break;
        case sat:
            printf("%d",sat);
            break;
        case sun:
            printf("%d",sun);
            break;
        default:
            break;
    }
    return 0;
}
运行后,输入5的话输出的也是5. 

为什么使用函数

将程序模块化
实现代码复用
使代码便于维护
函数就是具有具体功能的自包含的代码块
c语言中函数分为
-系统库函数
    • 使用系统库函数求出数字的平方、平方根及次幂值并输出。
    • 使用到的数学库函数包括:
    • sqrt(x) :x的平方根
    • pow(x,y):x的y次幂(平方)
    • fabs(x) :x的绝对值

-自定义函数

包括声明和定义两部分.
如果函数写在main方法上面,则不用声明.但是如果函数写在main下面 则必须在main函数外声明.

形式参数和实际参数

    • 形式参数简称形参,用于函数声明及定义时的参数列表中,用于传递数据到函数中
    • 实际参数简称实参,作为数据的载体,调用函数时用于数据传递给函数的形式参数

变量存储类型

局部变量: auto static register

auto
自动型变量,不写默认也是自动型,每次使用时被创建,出了其作用域后自动释放
static
静态型变量,定义为静态变量之后,在程序运行期间一直保持,直到程序运行结束

(

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

{

       int nA = 1;

       static int nB = 1;

      nA++;

       nB++;

printf("%d\t",nA);

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

}

)

static变量在程序你开始就运行了,运行后显示nA是不累加的nB是累加的.



register
寄存器型变量,和自动型变量具有相同的持续时间,但是被存储到了寄存器内,但是有些编译器并不支持此类型,那么就当做auto型使用(寄存器是cpu的元部件,从寄存器中取数据比从内存中取数据要快,但存储的数据有限)


全局变量: 无修饰符 static extern


无修饰符
在程序运行时创建一次,程序结束时销毁,允许在同项目的其他文件中使用该变量
static
程序运行时创建一次,程序结束时销毁,不允许在同项目的其他文件中进行使用
extern
扩展其他文件中的全局变量到本文件进行使用,并不创建新的变量,而是使用已有的同名变量
extern还可以用来扩展其他文件中的函数到本文件使用


如果把全局变量声明在头文件中.h 想使用的话,只需要在C源文件中引入头文件中。
如果把全局变量声明在源文件中,在其他源文件中想使用的话,必须用exuern声明一下他.
如果把全局变量加static声明下源文件中,其他源文件是使用不了的,但是头文件可以.




1
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值