BBS.ChinaUnix.net
首页 | 新闻 | Linux | FreeBSD | AIX | Windows | 博客 | 论坛 | 存储 | 网络 | 人才 | Wiki | 资料 | 读书 | 手册 | 下载 | 空间 | 搜索
  会员: 密码: 免费注册 | 忘记密码 | 会员登录 | 搜索 | 帮助 


奥运快报: 
奥运热点:
 

精彩推荐帖子 [C] 奇怪,为什么指针地址会改变了?(请教)
首页 » 论坛 » C/C++ »  
[打印] [订阅] [收藏] [本帖文本页] [推荐此主题给朋友,立即获积分]
  本主题由 cugb_cat 于 2008-6-30 10:12 加入精华 
qnnui
侠客




UID:705229
注册:2008-5-14
最后登录: 2008-08-30
帖子:18
精华:1

可用积分:23 (白手起家)
信誉积分:0
专家积分:0
空间积分:0 (白手起家)
推广积分:0 (白手起家)
专家积分:0 (本版)

状态:...离线...

[个人空间] [短信] [博客]


顶部
1楼 发表于 2008-6-25 21:34 
比如如下程序实行时:
int main() {
    SQLDA *pda;

    ......  // 这里有一系列处理

    printf("%p", pda);  // 此时该指针地址为435984
    dataExc(pda);
    printf("%p", pda); //  此时该指针地址变为了202020.  在dataExc中还是435984的呀,为什么这里会变了呢?
}

int dataExc(SQLDA *pda) {

        ......  // 这里有一系列处理
        printf("%p", pda);  // 此时该指针地址仍然为435984
        return 0;
}



您对本贴的看法:鲜花[0] 臭蛋[0]
空间积分可以换礼品了! | 有奖跟帖:服务器节能,奖50-100元图书 | 致电800-858-2903,了解DELL如何为你量身订制笔记本 | 送2G U盘
Kevin_zqw
精灵王
巴山夜雨



UID:670125
注册:2008-2-22
最后登录: 2008-08-21
帖子:288
精华:0

可用积分:225 (白手起家)
信誉积分:0
专家积分:0
空间积分:0 (白手起家)
推广积分:0 (白手起家)
专家积分:0 (本版)

状态:...离线...

[个人空间] [短信] [博客]


顶部
2楼 发表于 2008-6-25 21:49 
不解



您对本贴的看法:鲜花[0] 臭蛋[0]

__________________________________

芝兰生于幽林,不以无人而不芳;君子修道立德,不为穷困而改节
空间积分可以换礼品了! | 有奖跟帖:服务器节能,奖50-100元图书 | 致电800-858-2903,了解DELL如何为你量身订制笔记本 | 送2G U盘
版主 net_robber   帅哥 (迷茫的羔羊)
版主-精灵使
堕落的鬼魂




UID:159572
注册:2004-5-20
最后登录: 2008-09-05
帖子:3415
精华:4

可用积分:5038 (富足长乐)
信誉积分:99
专家积分:10
空间积分:0 (白手起家)
推广积分:0 (白手起家)
专家积分:5 (本版)

状态:...在线...

[个人空间] [短信] [博客]


顶部
3楼 发表于 2008-6-25 21:52 
你确定dataExc的定义是
int dataExc(SQLDA *pda)
而不是
int dataExc(SQLDA &pda)



您对本贴的看法:鲜花[0] 臭蛋[0]

__________________________________

支持山寨,效果还算满意
空间积分可以换礼品了! | 有奖跟帖:服务器节能,奖50-100元图书 | 致电800-858-2903,了解DELL如何为你量身订制笔记本 | 送2G U盘
scutan   帅哥 (冬日夜雨)
精灵使
Linux newbie


CU奥运火炬传递手2008
UID:551201
注册:2007-4-13
最后登录: 2008-09-05
帖子:4264
精华:10

可用积分:3392 (小富即安)
信誉积分:340
专家积分:734
空间积分:806 (稍有积蓄)
推广积分:0 (白手起家)
专家积分:317 (本版)

来自:成都
状态:...在线...

[个人空间] [短信] [博客]


顶部
4楼 发表于 2008-6-25 21:57 
程序不会出错, 出错的是人, 好好检查一下.



您对本贴的看法:鲜花[0] 臭蛋[0]

__________________________________

全力以赴每一秒!
勿在浮砂筑高台!
空间积分可以换礼品了! | 有奖跟帖:服务器节能,奖50-100元图书 | 致电800-858-2903,了解DELL如何为你量身订制笔记本 | 送2G U盘
版主 思一克   帅哥
版主-法师




UID:88701
注册:2003-8-25
最后登录: 2008-09-05
帖子:5753
精华:14

可用积分:6846 (富足长乐)
信誉积分:100
专家积分:58
空间积分:0 (白手起家)
推广积分:0 (白手起家)
专家积分:31 (本版)

来自:东城
状态:...保密...

[个人空间] [短信] [博客]


顶部
5楼 发表于 2008-6-25 21:58 
第二个


......  // 这里有一系列处理


处理出问题的.



您对本贴的看法:鲜花[0] 臭蛋[0]

__________________________________

Email: johnye@webizmail.com
空间积分可以换礼品了! | 有奖跟帖:服务器节能,奖50-100元图书 | 致电800-858-2903,了解DELL如何为你量身订制笔记本 | 送2G U盘
版主 flw   帅哥
广告杀手-老法王
侠客



UID:14893
注册:2002-8-12
最后登录: 2008-09-05
帖子:20118
精华:13

可用积分:15483 (大富大贵)
信誉积分:925
专家积分:1219
空间积分:0 (白手起家)
推广积分:0 (白手起家)
专家积分:105 (本版)

状态:...在线...

[个人空间] [短信] [博客]


顶部
6楼 发表于 2008-6-25 22:02 
楼主在骗人。



您对本贴的看法:鲜花[0] 臭蛋[0]

__________________________________

data Maybe a = Nothing
             | Just a

---
如何知道一个变量是什么类型?
如何知道分配的内存有多大?
如何知道 select 的 fd_set 里哪个句柄是无效的?
如何知道指针是不是有效的?
如何通过文件句柄得到文件名?
……
如何知道我昨晚把袜子脱哪儿了?
空间积分可以换礼品了! | 有奖跟帖:服务器节能,奖50-100元图书 | 致电800-858-2903,了解DELL如何为你量身订制笔记本 | 送2G U盘
版主 思一克   帅哥
版主-法师




UID:88701
注册:2003-8-25
最后登录: 2008-09-05
帖子:5753
精华:14

可用积分:6846 (富足长乐)
信誉积分:100
专家积分:58
空间积分:0 (白手起家)
推广积分:0 (白手起家)
专家积分:31 (本版)

来自:东城
状态:...保密...

[个人空间] [短信] [博客]


顶部
7楼 发表于 2008-6-25 22:03 
flw, LZ是真的, 没有骗人.

你仔细想想

QUOTE:
原帖由 flw 于 2008-6-25 22:02 发表
楼主在骗人。




您对本贴的看法:鲜花[0] 臭蛋[0]

__________________________________

Email: johnye@webizmail.com
空间积分可以换礼品了! | 有奖跟帖:服务器节能,奖50-100元图书 | 致电800-858-2903,了解DELL如何为你量身订制笔记本 | 送2G U盘
版主 cjaizss   帅哥
版主-精灵使



UID:272747
注册:2005-5-26
最后登录: 2008-09-05
帖子:4748
精华:1

可用积分:1721 (家境小康)
信誉积分:100
专家积分:35
空间积分:0 (白手起家)
推广积分:0 (白手起家)
专家积分:10 (本版)

状态:...保密...

[个人空间] [短信] [博客]


顶部
8楼 发表于 2008-6-25 22:05 
C++?用了引用
如果是C语言,那么只能解释成存在越界访问了.



您对本贴的看法:鲜花[0] 臭蛋[0]

__________________________________

二十几年来最大的遗憾,并不是少赚了的钱,也不是少交了友,而是永远没有机会为最钟爱的数学真正做点什么,或许这会是这一生的遗憾
做个合格的电子工程师,其实很难

空间积分可以换礼品了! | 有奖跟帖:服务器节能,奖50-100元图书 | 致电800-858-2903,了解DELL如何为你量身订制笔记本 | 送2G U盘
scutan   帅哥 (冬日夜雨)
精灵使
Linux newbie


CU奥运火炬传递手2008
UID:551201
注册:2007-4-13
最后登录: 2008-09-05
帖子:4264
精华:10

可用积分:3392 (小富即安)
信誉积分:340
专家积分:734
空间积分:806 (稍有积蓄)
推广积分:0 (白手起家)
专家积分:317 (本版)

来自:成都
状态:...在线...

[个人空间] [短信] [博客]


顶部
9楼 发表于 2008-6-25 22:09 
回复 #8 cjaizss 的帖子

嗯. 我也怀疑是缓冲区溢出, 不过楼主再来详细说明一下才好, 不然又成了大家在这乱猜的局面了.



您对本贴的看法:鲜花[0] 臭蛋[0]

__________________________________

全力以赴每一秒!
勿在浮砂筑高台!
空间积分可以换礼品了! | 有奖跟帖:服务器节能,奖50-100元图书 | 致电800-858-2903,了解DELL如何为你量身订制笔记本 | 送2G U盘
版主 思一克   帅哥
版主-法师




UID:88701
注册:2003-8-25
最后登录: 2008-09-05
帖子:5753
精华:14

可用积分:6846 (富足长乐)
信誉积分:100
专家积分:58
空间积分:0 (白手起家)
推广积分:0 (白手起家)
专家积分:31 (本版)

来自:东城
状态:...保密...

[个人空间] [短信] [博客]


顶部
10楼 发表于 2008-6-25 22:14 
我好多年前出过"思一克小测验题", 意思和这个是一样的:

用C.

#include <stdio.h>;

void func(int i)
{

    ????????

    printf("i1 = %d\n", i);
}

main()
{
int  i = 59;

    printf("i0 = %d\n", i);   
    func(i);
    printf("i2 = %d\n", i);
}

要求写出???????出的代码, 使得程序打印结果为:

i0 = 59
i1 = 59
i2 = 43



您对本贴的看法:鲜花[0] 臭蛋[0]

__________________________________

Email: johnye@webizmail.com
空间积分可以换礼品了! | 有奖跟帖:服务器节能,奖50-100元图书 | 致电800-858-2903,了解DELL如何为你量身订制笔记本 | 送2G U盘

首页 » 论坛 » C/C++ »


 


Copyright © 2001-2008 ChinaUnix.net All Rights Reserved     联系我们:

感谢所有关心和支持过ChinaUnix的朋友们    转载本站内容请注明原作者名及出处

京ICP证041476号


清除 Cookies - ChinaUnix - Archiver - WAP - TOP

Processed in 0.056662 second(s), 5 queries , Gzip enabled