| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1536 人关注过本帖
标题:投诉编译器!!!!!!
只看楼主 加入收藏
xuwinsun
Rank: 1
等 级:新手上路
帖 子:28
专家分:0
注 册:2004-8-17
收藏
得分:0 

我试过了,在mytc中没有good,但在tc中有。

怎么回事????????????????

mytc怎么了?我一直很信任的哦。


我:“日本人也算人?” 上帝:“不算。将它们圈养就行了。美国人在它们头上扔两蛋不就乖得很吗?你们讲究什么仁义道德?” http://www./bbs/dispbbs.asp?BoardID=1&RootID=36493&id=36500&star=1&skin=0
2004-11-02 20:16
忆楠
Rank: 1
等 级:新手上路
帖 子:721
专家分:0
注 册:2004-7-5
收藏
得分:0 

用win-tc 结果:

644,good,

good

world

bye


点 鼠 标 , 救 饥 民 http://www./
2004-11-02 20:56
时空之蕊
Rank: 2
等 级:新手上路
威 望:3
帖 子:691
专家分:0
注 册:2004-10-31
收藏
得分:0 

VC中!!

20400070,good bye

我跟踪了一下发现正确阿!!你们跟踪进去看看!!20400070确实是那个“good”的首地址,其他的现行大家都知道了!!其他的tc我会看看的!!


我渴望掌控时空的核心——用最先进的技术,打造无比美丽的世界!
2004-11-02 21:23
时空之蕊
Rank: 2
等 级:新手上路
威 望:3
帖 子:691
专家分:0
注 册:2004-10-31
收藏
得分:0 

同志们啊!!不是我打击大家!!好有趣的现象!!!让我慢慢道来!!

tc3.0中——他输出没有问题,但是win-tc就有趣了!!不信大家伙试一试!!

首先我没有取掉那行!!getch(); /* 请不要删除此行 */

输出为: I:\>char 256,♣X[YZ^_]▼──P8Θ│♥SP┤♠. ▲O◄X[├» bye

但我除掉它后得到的结果是!—— I:\>nochar 256,ÉÉΦ¿ bye

我以后肯定的不会再去使用win-tc了太让人失望了!!


我渴望掌控时空的核心——用最先进的技术,打造无比美丽的世界!
2004-11-02 21:49
时空之蕊
Rank: 2
等 级:新手上路
威 望:3
帖 子:691
专家分:0
注 册:2004-10-31
收藏
得分:0 
我的win-tc是Turbo C for Windows 4.5

我渴望掌控时空的核心——用最先进的技术,打造无比美丽的世界!
2004-11-02 21:51
poppylx
Rank: 1
等 级:新手上路
帖 子:367
专家分:0
注 册:2004-9-27
收藏
得分:0 

#define NULL 0 void main() { char **p; int t; char *name[]={"hello","good","world","bye","\0"}; p=name+1; t=020400070; printf("%s,%s\n", t,*p); p+=2; while(**p!=NULL) printf("%s\n",*p++);

getch(); /* 请不要删除此行 */ }

小弟有点想法 请大家看看

我觉得good前面的数字不是内存地址 而是goog的八进制代码

我把程序改成上面那个样子 将数字写成八进制的形式 输出为good

是我的想法错了 还是其他原因

请高手指点

[此贴子已经被作者于2004-11-02 22:47:11编辑过]


动于心而静如水
2004-11-02 22:36
poppylx
Rank: 1
等 级:新手上路
帖 子:367
专家分:0
注 册:2004-9-27
收藏
得分:0 

不要不理我,~~~~~~~~~`

555


动于心而静如水
2004-11-02 23:44
时空之蕊
Rank: 2
等 级:新手上路
威 望:3
帖 子:691
专家分:0
注 册:2004-10-31
收藏
得分:0 

我刚才看了!!!

good的16进制是676f6f64

不知道你凭什么说是020400070你可以使用计算器来算

试验了一下好像是那么回事。收回我说的话!!

想了一想还是你的错了!!吧!!

你看看%s的定义对应的参数应该是一个字符串的首地址,也就是说你的t=020400070; 恰好是这个程序里面的”good“的首地址!!如果我把这里改一下那么输出就不应该是good了!!!

[此贴子已经被作者于2004-11-03 00:20:10编辑过]


我渴望掌控时空的核心——用最先进的技术,打造无比美丽的世界!
2004-11-03 00:12
时空之蕊
Rank: 2
等 级:新手上路
威 望:3
帖 子:691
专家分:0
注 册:2004-10-31
收藏
得分:0 

看来还是学一点汇编知识有用阿··!!下面看看我改动的部分!!

#define NULL 0 void main() { char **p; int t; char *name[]={"hello","good","world","bye","test","\0"};//这里改动了!! p=name+1; t=020400070; printf("%s,%s\n",t,*p); p+=2; while(**p!=NULL) printf("%s\n",*p++); }

输出是什么你自己看看!!就明白了!!


我渴望掌控时空的核心——用最先进的技术,打造无比美丽的世界!
2004-11-03 00:26
poppylx
Rank: 1
等 级:新手上路
帖 子:367
专家分:0
注 册:2004-9-27
收藏
得分:0 
   明白了   还是我想错了  多谢了

动于心而静如水
2004-11-03 00:34
快速回复:投诉编译器!!!!!!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.025756 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved