freeelectron 发表于 2016-3-18 09:04:15

p1+5=(unsigned char *)0x801005;
p2+5=(unsigned long *)0x810005;

249538819 发表于 2016-3-18 09:04:20

0x801005
0x810014

wujianwei3980-5 发表于 2016-3-18 09:06:27

签到。。。。。。。。。。。。。

Paderboy 发表于 2016-3-18 09:07:29

:loveliness:
:loveliness::loveliness:0x8010050x81000a

andrewz 发表于 2016-3-18 09:08:08

签到签到~~~~

ropepeng 发表于 2016-3-18 09:08:30

0x801005
0x810014

我要学stm32 发表于 2016-3-18 09:11:34

签到...............

zwjiang8212 发表于 2016-3-18 09:11:47

签到:lol:lol:lol

aszrf 发表于 2016-3-18 09:11:57


签到签到

zhuoyemp4 发表于 2016-3-18 09:12:09

这考察的是指针加法中1代表什么的问题
在这里1代表的是一个单位量
p1+5=p1+5*1=p1+5*sizeof(unsigned char)=p1+5*1=0x801000+ox5=0x801005
p2+5=p2+5*1=p2+5*sizeof(unsigned long)=p1+5*4=0x810000+20=0x810000+0x14=0x810014
p1+5的值是0x801005,因为指针变量指向的是字符,加一表示指针向后移动一个字节,那么加5代表向后移动5个字节,所以输出0x801005
p2+5的值是0x810014,因为指针变量指向的长整形的,加一表示指针向后移动4个字节,那么加5代表向后移动20个字节,所以输出0x810014
经验证也是对的,如下图所示
页: 1 2 [3] 4 5 6 7 8 9 10 11 12
查看完整版本: 【3.18签到】每日问答——写出下列程序的运算结果