字节(Byte)、位(bit)

1、位:

数据存储的最小单位。每个二进制数字0或者1就是1个位;

2、字节:

8个位构成一个字节;即:1 byte (字节)= 8 bit(位);

1 KB = 1024 B(字节);

1 MB = 1024 KB; (2^10 B)

1 GB = 1024 MB; (2^20 B)

1 TB = 1024 GB; (2^30 B)

2个十六进制位占用一个字节(8个二进制)

1个十六进制=4个二进制

16=2^4

指针类型决定了:指针进行解引用操作的时候

能够访问空间的大小

int*p 能够访问4个字节

char*p 能够访问1个字节

double*p 能够访问8个字节


指针类型决定了:指针走一步能走多远(指针的步长)

int*p: p+1-->4

char*p:p+1-->1

double*p:p+1-->8

接下来我们来看看这个题目

int* test()
{
	int a = 10;
	return& a;
}
int main()
{
	test();
	return 0;
}

这行代码虽然并不会报错,但是存在逻辑错误

首先在int main()进入主函数

test()进入第二个函数

a为局部变量

只在test函数中存在,出了test函数便销毁了

这里也存在同样的问题,当出了test函数

这个指针变量便放回了电脑里面

其实道理很简单

就像你去酒店开房,当你退房之后,你还想住进去,这便不可能了

       *p = i;
        p++;
      可以缩写成这样  *p++ = i;

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值