您的位置:首页 > 编程语言 > C语言/C++

warning C4018: “<”: 有符号/无符号不匹配

2016-08-11 11:03 162 查看
出错代码:for (int i = 0; i < vec_test_images.size(); i++)

出错原因分析: vec_test_images 是一个Vector容器 ,ec_test_images.size() 在容器说明中 被定义为: unsigned int 类型, 而j是int 类型 所以会出现: 有符号/无符号不匹配警告

错误改正: 定义 i为unsigned类型后就可以了

即: for(unsigned inti=0;i < vec_test_images.size(); i++)

或者: for(size_t i=0;i < vec_test_images.size(); i++)

size_t和int的区别是什么

typedef unsigned int size_t

size_t是无符号的,并且是平台无关的,表示0-MAXINT的范围

size_t是无符号,int是有符号的。

size_t是一个独立于平台的定义,长度是唯一的,而int却是和平台相关的



顶3
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  C++