夏日岛歌
2019-08-04 16:41
采纳率: 100%
浏览 1.4k

请问vector<int> vec大小的问题?

代码如下:
vector vec = {};

int i = vec.size() - 1;

cout << i << endl;

cout << vec.size() - 1;

得到的结果上面是-1,下面却是4294967295

请问这是为什么,我的猜想是因为vec.size()是一个无符号型整型

但是我不知道应该如何验证,我用的是VS2017,请问应该怎么查看

这样我下次碰到了可以自己看下

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • threenewbee 2019-08-04 16:43
    已采纳

    你说的没错。
    -1 对应 0xFFFFFFFF,无符号就是 2的32次方-1,也就是4294967295

    评论
    解决 无用
    打赏 举报
  • 查看更多回答(2条)

相关推荐 更多相似问题