----------------解决方案--------------------------------------------------------
[bo]以下是引用 [un]c_acceleration[/un] 在 2008-5-4 13:41 的发言:[/bo]
差不多是的,why?
差不多是的,why?
没有WHY,我只知道标准的编译器会输出TRUE,我不学非标准
而且我也不写这种代码,我写的代码都是将警告作为错误处理,所以我的编译器不能运行这个程序
----------------解决方案--------------------------------------------------------
看9楼
----------------解决方案--------------------------------------------------------
看了,感觉标准的就是不错,xor %eax,%eax
至少把%eax 清零,寄存器没残留。。。
----------------解决方案--------------------------------------------------------
汇编到几代了?我怎么觉得我的c51和x86(除去忘记的),怎么还有没见过的指令...
----------------解决方案--------------------------------------------------------
感觉Solaris10平台或者你的编译器还是有点问题...
----------------解决方案--------------------------------------------------------
[bo]以下是引用 [un]sunkaidong[/un] 在 2008-5-4 14:04 的发言:[/bo]
汇编到几代了?我怎么觉得我的c51和x86(除去忘记的),怎么还有没见过的指令...
汇编到几代了?我怎么觉得我的c51和x86(除去忘记的),怎么还有没见过的指令...
这个汇编可以说是祖宗的变种
#include <stdlib.h>
bool myfunc(int p)
{
if (p == 1) {
return false;
} else if (p == 2) {
return false;
}
// return false;// 我加与不加
}
int main()
{
try
{
if (myfunc(3)) {
printf(" ... return TRUE ...\n");
} else {
printf(" ... return FALSE ...\n");
}
} catch (...) {
printf(" ... Exception is caught ...\n");
}
return 0;
}
1
... return TURE ...
2
... return FALSE ...
之后不用输入都是
... return FALSE ...
哈哈,到此结帖吧,此程序病态
[[it] 本帖最后由 c_acceleration 于 2008-5-4 14:15 编辑 [/it]]
----------------解决方案--------------------------------------------------------