一个小知识
int 最大值是2^31-1,有符号数,第一位是0表示正数,也就是16进制表示下的0x7fffffff;
我们一般选取的无穷大为0x3f3f3f3f,这是因为,其是10^9级别的,一般情况下绝对用不到这么大的数字,
同时其满足无穷大+无穷大=无穷大;即不会溢出。若用0x7fffffff则会溢出。而0x3f3f3f3f+0x3f3f3f3f=2122219134不会溢出
最后,由于memset是按字节赋值的,因此只需要memset(a,0x3f,sizeof a)即可完成无穷大的赋值操作
总结:
1 够大,一般这么大你不会用到
2 够大但不容易溢出
3 方便数组赋值(如果你用FF会变成负数,符号位也会成1)