学习C语言第七天

常见关键字

auto break case char const continue default do double else enum extern float for goto if int long register return short signed sizeof static struct switch typedef union unsigned void volatile while

const 常属性

extern 声明外部符号的

enum 枚举

struct 结构体

union 联合体(共用体)

register 寄存器

srtatic 静态的

return 函数返回值

void 无(函数的返回类型,函数参数)

sizeof 计算大小

typedef 类型重命名

关键字typedef

typedef 顾名思义是类型定义,这里应该理解为类型重命名。将unsigned int 重命名为uint

关键字static

static是用来修饰变量和函数的

1.修饰局部变量

2.修饰全局变量

3.修饰函数

修饰局部变量

static修饰局部变量的时候,局部变量出了作用域,不销毁的。本质上,static修饰局部变量的时候,改变了变量的存储位置的。

影响了变量的生命周期,生命周期变长,和程序的生命周期一样。

void test()

{

int a = 1;

a++;

printf("%d ", a);

}

int main()

{

int i = 0;

while (i < 10)

{

test();

i++;

}

return 0;

}

void test()

{

static int a = 1;

a++;

printf("%d ", a);

}

int main()

{

int i = 0;

while (i < 10)

{

test();

i++;

}

return 0;

}

修饰全局变量

全局变量是具有外部链接属性的

static修饰全局变量的时候,这个全局变量的外部链接属性就变成了内部链接属性。其他源文件(.c)就不能再使用到这个全局变量了。

修饰函数

一个函数本来是具有外部链接属性的,但是被static修饰的时候,外部链接属性就变成了内部链接属性,其他源文件(.c)就无法使用了。

关键字register

register 寄存器

int main()

{

//寄存器变量

register int num = 3;//建议:3存放在寄存中

return 0;

}

#define 定义常量和宏

定义标识符常量

#define NUM 100

int main()

{

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

int n = NUM;

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

int arr[NUM] = {0};

return 0;

}

定义宏

宏是有参数的

#define ADD(x,y) ((x)+(y))

int main()

{

int a = 10;

int b = 20;

int c = ADD(a, b);

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

return 0;

}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值