今天上午因为0x3f的赋值问题debug了一上午,虽然最后解决了但还是有些疑问:
#include<bits/stdc++.h>
using namespace std;
int a[1],b[1];
int main()
{
memset(a,0x3f,sizeof(a));
b[0]=0x3f;
cout<<a[0]<<" "<<b[0];
return 0;
}
输出:1061109567 63
如代码所示:众所周知0x3f=0011 1111=63,但由memset赋值出来的结果却是1061109567。请问大佬其中的原因,谢谢!!