首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

关于?)字符串,哪位高手能解出来,小弟我拜他为师

2012-04-24 
关于??)字符串,谁能解出来,我拜他为师!解释下为什么??)输出是]测试环境:Microsoft Windows XP Professiona

关于??)字符串,谁能解出来,我拜他为师!
解释下为什么??)输出是]
测试环境:Microsoft Windows XP Professional Service Pack 3
编译器:VC6.0 VS2008 MinGW
执行下列代码:
cout<<"??)"<<endl;
MinGW输出正常,而VC6.0和VS2008则输出为]
换成printf输出依旧是],说明不是cout的问题,
改代码成:
char temp[4] = "??)"; 
cout<<temp<<endl;
调试发现,在输出前temp里面的内容就变成']',而单独对每个字符进行复制,输出是没问题的,说明问题来源于
char temp[4] = "??)";
看这句的汇编语言:
mov ax,word ptr [string "]" (417808h)]
说明这个问题来于编译过程,微软的编译是通过cl.exe来进行了的.
IDA工具用的不熟悉,接下来无法分析了。



[解决办法]
mov ax,word ptr [string "]" (417808h)]
把“]”对应的地址存入ax寄存器

输出??应该是编码问题了,
[解决办法]
在VS2010里试验,没有问题。LZ换新装吧,旧衣服可以扔了。
[解决办法]

探讨
在VS2010里试验,没有问题。LZ换新装吧,旧衣服可以扔了。

[解决办法]
探讨
嗯,貌似就是三元组,哪有详细解释啊?

热点排行