似乎SetErrorMode(SEM_NOGPFAULTERRORBOX)
, 抑制了除以零。
重现代码:
SetErrorMode(SetErrorMode(0) | SEM_NOGPFAULTERRORBOX); // Comment out this line and an error dialog will appear.
int a = 5;
printf("%d", 1/(a-5));
这是为什么?从名称来看,我认为它应该只抑制通用保护故障,这与除以零无关。
似乎SetErrorMode(SEM_NOGPFAULTERRORBOX)
, 抑制了除以零。
重现代码:
SetErrorMode(SetErrorMode(0) | SEM_NOGPFAULTERRORBOX); // Comment out this line and an error dialog will appear.
int a = 5;
printf("%d", 1/(a-5));
这是为什么?从名称来看,我认为它应该只抑制通用保护故障,这与除以零无关。