所在的位置: C++ >> C++资源 >> C语言指针与16进制

C语言指针与16进制

①规则

16进制

1、2、3、4、5、6、7、8、9、

10用A表示、11用B表示、12用C表示、13用D表示、14用E表达、15用F表达、

16进位。

②例子

#includestudio.h

main()

{

inta[10]={1,2,3,4,5,6,7,8,9,0},*p=a;

p=a;

/*p表示a[0]的地址,而不是a[0]的值1*/

printf("%x\n",p);

/*%x表示16进制*/

printf("%x\n",p+9);

}

若1个int变量占2字节,输出p=,

则p+9=1A6

~

③计算过程

p为指向数组a首地址的指针,

p+9为指针向右移动9个存储空间,

每个存储空间为1个int变量(2字节),

即指针向右移动9×2=18个字节,

18转化为16进制,16+2转化为12,

9个存储空间18个字节12(16进制)

p=

p+9=+12=1(10)6=1A6

注意此处

p+9为指针移动9个物理地址,

而不是p+9=+9=19(13)=19D




转载请注明:http://www.aierlanlan.com/rzgz/4907.html

  • 上一篇文章:
  •   
  • 下一篇文章: