与c的第一次相遇(3)

本文章接续上一篇文章(http://t.csdn.cn/qVjdf

附加与上一篇的“关键字”

register     建议存放寄存器(寄存器用于放常用变量(运行快)来提高效率)

放到变量前面用于建议把该变量放在寄存器里面(但是只是建议,会不会放到寄存器里面要看编译器自身)    但是现在的编译器即使你不写“建议”,他也会放到自动把一些变量放到寄存器里面

拓展

 

typedef重命名关键字  如type int  a即为int重命名为a d=0认定整形变量d

static静态

修饰局部变量 ; 可以使变量“长生”(生命周期)出作用域不消除,但是只能在本作用域使用

修饰全局变量;static使该变量只能在自己所在的源文件使用 (全局变量可以全局使用但是要用extern(链接),但是有了static后 只能在自己所在的源文件使用,即缩小范围)

修饰函数同上;

拓展 一般内存分为三个部分

栈区;局部变量,临时函数参数存放地点(总结就是刚输入的东西而且·用完就销毁的)

堆区;动态内存分布(动态分配内存_百度百科 (baidu.com)

静态区;全局变量和某些不会消除的局部变量(放到静态区的变量到最后程序结束才会)

define

定义的常量#define m 400;m定义常量为400;

定义宏(有参数)(类似与函数 但是只能用于简单的并且格式不一样    宏用(参数)(内容简单,无return))#define ADD名称(x,y参数)((x)+(y)操作内容)

14指针(就是地址,存在于内存中)

&a代表的是a的地址

int(数据类型必须和a变量的数据类型一样) *pa=&a代表pa存a的地址

*pa=20;解引用操作(就是根据地址先找到变量a再把a赋值改变,但是地址不改变)即改变*pa等于改变变量a(本人觉得二者在使用方面挂等号)

printf(“p\n”,&a)打印的是a变量的所占内存的4个字节的第一个字节;(地址占字节和该表示变量的站字节大小不一样的例如char上(地址)4   (变量)1 )总结;地址变量32位上4字节,64位上8字节

 

拓展;

1.内存单元和地址用二进制决定(一个单元为1个字节)32位机器32位2^32个字节(单元),64位地址64个地址线(64位)2^64个字节,

2.进制表示形式; 11的十进制11    16进制0xb(16进制  0-9  abcdef)   8进制013

(作者感觉这次写的有点乱,请多担待,)希望大佬们多多指教!!!谢谢

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值