abs(-2147483648)的值

printf("%d\n", abs(-2147483648));

结果仍为 -2147483648. 哪位帮忙解释一下. 谢谢

阅读 3k
2 个回答

abs(int)带入INT_MIN的结果超出了int的限制,此时abs函数
undefined behavior(未定义行为)。
c++reference

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进