windows - 如何在 Windows 中取回普通的旧“分段错误”消息?
问题描述
我在 Windows 10 开发环境中遇到了一种奇怪的行为。
我编译以下代码(mingv gcc-8.1.0)
int main(){
char* x = nullptr;
std::cout<<*x<<std::endl;
return 0;
}
当我在 cmd 或 powershell 窗口中运行该程序时,它会输出一个空行,等待几秒钟,然后返回提示。
我很想让它打印“分段错误”并立即退出,如上帝所愿。
如果我在 GDB 中运行程序,则会正确显示错误 ( Thread 1 received signal SIGSEGV, Segmentation fault.
)。
有人可以解释为什么会这样做,以及是否有办法获得所需的行为?
解决方案
推荐阅读
- python - 如何在 Python 中导入 Excel 文件列并在列之间进行多元线性回归
- deeplearning4j - 读取 csv 时出现异常 java.lang.NumberFormatException: For input string: "5.1"
- gradle - Jitpack 和 kotlin 多平台神器 groupId
- javascript - javascript includes() 方法的多个条件
- sql - SQL。如何将数据一次插入到两个表中,当一个表通过外键与另一个表相关时
- ios - UISwipeGestureRecognizer 不适用于呈现的 VC 和视图
- javascript - 如何获取给定国家/地区的 UTC 时差?
- react-native - 图标未显示在 react-navigation-header-buttons 中(React Native)
- python - 尝试将 python 输入命令插入我的 SQL 查询
- ruby-on-rails - 如果您已登录但不是帐户成员,我如何执行 before_action 重定向