首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么这个打印5?

为什么这个打印5?
EN

Stack Overflow用户
提问于 2017-10-04 11:51:20
回答 1查看 46关注 0票数 0

假设我们有以下内容:

代码语言:javascript
复制
int array[][2]{1, 2, 3, 4, 5, 6};

cout << ( * ( array + 1 ) )[2] << endl;

我不明白为什么这个打印5。

我认为(数组+ 1)给我们一个int *2到{3,4},所以,我们可以把它看作是第二行。让我们把这个指针叫做ptr。

(* ptr)2

这是说我应该取消ptr,然后打印索引2处的任何内容吗?取消引用ptr不是给了我一个指向3号的int *吗?

EN

回答 1

Stack Overflow用户

发布于 2017-10-04 11:55:40

因为您有一个由SO2元素组成的数组,并且您正在按索引2访问,这实际上是第三个数字(0,1,2)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46564133

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档