指针学习笔记

程序

#include <stdio.h>


定义一个结构体
typedef struct {
int a;
int b;

}T_AB;


int main(int argc, char **argv)
{
char c;    
int a;
T_AB tTest;
int *p;
int **pp;


/* 1. */
p = &a;        //将a的地址赋给p变量
printf("p = 0x%x, a'addr = 0x%x\n", p, &a);


/* 2. */
*p = 0x12345678;    //给p所指向的变量赋值0x12345678
printf("a = 0x%x\n", a);


/* 3. */
p = &c;                    //将c的地址赋值给p变量
printf("p = 0x%x, c'addr = 0x%x\n", p, &c);


/* 4. */
*p = 'A';                        //给p所指向的变量赋值'A'
printf("c = %c\n", c);


/* 5. */
p = &tTest;                    //将tTest的地址赋值给p变量
printf("p = 0x%x, tTest'addr = 0x%x\n", p, &tTest);


/* 6. */
*p = &tTest;                    //将tTest的地址赋值给p变量所指向的地址,就是把tTest的地址赋值给tTEST
printf("tTest.a = 0x%x, tTest'addr = 0x%x\n", tTest.a, &tTest);


/* 7. */
pp = &p;                            //将p变量的地址赋值给pp变量
printf("pp = 0x%x, p'addr = 0x%x\n", pp, &p);


/* 8. */
**pp = 0xABCD1234;           //将0xABCD1234赋值给tTest.a
printf("tTest.a = 0x%x\n", tTest.a);
return 0;

}

运行结果

p = 0xbf976c48, a'addr = 0xbf976c48
a = 0x12345678
p = 0xbf976c4f, c'addr = 0xbf976c4f
c = A
p = 0xbf976c38, tTest'addr = 0xbf976c38
tTest.a = 0xbf976c38, tTest'addr = 0xbf976c38
pp = 0xbf976c44, p'addr = 0xbf976c44
tTest.a = 0xabcd1234


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值