1

这是一个简单的代码,如下所示:

#include <stdio.h>
#include <stdint.h>
#include <limits.h>
int main(){
    int b = INT_MIN;
    int c = -1;
    int a = b/c;
}

编译后运行代码时,会出现一个 SIGFPE:

[1]    27835 floating point exception (core dumped)  /tmp/a

我的系统信息:
内核:4.19.0-5-amd64
CPU:Intel(R) Core(TM) i7-5600U CPU @ 2.60GHz
gcc 版本 8.3.0

我打算看到除法的签名 int 溢出。但是我对信号 FPE 感到非常困惑,因为没有计算浮点数。

4

0 回答 0