c++,int和unsigned类型比较时需要注意
c++11,std::vector::size() 返回值是unsigned,下面这段代码输出
3
wtf!
int in[] = {1,2,3};
vector<int> input(in, in+sizeof(in)/sizeof(int));
cout<<input.size()<<endl;
if(-3>input.size()) cout<<"wtf!"<<endl; //-3被当做是unsigned值了
if(-3>(int)input.size()) cout<<"wow!"<<endl; #C/C++#
阿里云工作强度 731人发布