C语言中8!这样算出来是怎么是负数?

日期:2022-04-05 03:33:03 人气:1

C语言中8!这样算出来是怎么是负数?

一般情况下,int都差不多是4个字节的,也就是说最大能放的数是2的32次方,当你要存放的数据大于这个结果时,系统就会将高位舍弃,也就是常说的数据溢出,而你的m要存放的是17的阶乘,已经远大于该数据了,因此出错也是难免的了!希望可以帮到你,本人知道的不多,如果说法有误的话请指正!
    A+
热门评论