返回信息流感觉指针只是指向一个地址,只要最后使用时;恢复原来的结构类型就可以在中间
随便转换,甚至。。
请大牛解释指针变量到底是什么结构?
#include<stdio.h>
struct st
{
int d;
};
struct si
{
char d;
};
void k(int * t)
{
struct st * k;
k=(struct st *)t;
printf("%d\n",k->d);
}
main()
{
struct st s;
struct st * p;
struct si *i;
s.d=10 ;
p=&s;
k((int *)p);
i=(struct si *)p;
printf("%d",i->d);
while(getchar()!='h');
}
结果
10
10
这是一条镜像帖。来源:北邮人论坛 / cpp / #7394同步于 2008/5/24
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖
有意思的指针,类型随便付,
hitch
2008/5/24镜像同步13 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
没啥数据结构,指针就是一个32位的无符号整数,标识的是内存地址。
计算机不懂你那么多逻辑,它只知道,你让它把一堆东西存在一个内存位置(指针)那里,它就那么做了。至于你那一堆数据做何解释,那是你的事,它不需要知道。
看看汇编的一些东西,很容易理解的
【 在 hitch (hitch) 的大作中提到: 】
: 感觉指针只是指向一个地址,只要最后使用时;恢复原来的结构类型就可以在中间
: 随便转换,甚至。。
: 请大牛解释指针变量到底是什么结构?
: ...................
你好,关于“计算机不懂你的逻辑”,那delete []p的时候为什么就知道要删除一数组呢?
【 在 ericyosho 的大作中提到: 】
: 没啥数据结构,指针就是一个32位的无符号整数,标识的是内存地址。
: 计算机不懂你那么多逻辑,它只知道,你让它把一堆东西存在一个内存位置(指针)那里,它就那么做了。至于你那一堆数据做何解释,那是你的事,它不需要知道。
你都说了那是数组了,计算机能不懂么……
【 在 beiyou100 (不等了!!!) 的大作中提到: 】
: 你好,关于“计算机不懂你的逻辑”,那delete []p的时候为什么就知道要删除一数组呢?
您好,反问一句:
int p[] 的时候为什么就知道要分配一个数组呢?
【 在 beiyou100 (不等了!!!) 的大作中提到: 】
: 你好,关于“计算机不懂你的逻辑”,那delete []p的时候为什么就知道要删除一数组呢?