【发布时间】:2013-10-09 01:24:53
【问题描述】:
int a[5] = {1,2,3,4,5};
for (int i = 0; a[i]; i++)
{
cout << i;
}
此代码产生“0 1 2 3 4”的输出。 它将 a[i] 与什么进行比较,它如何知道在数组的末尾停止而不是过去?
【问题讨论】:
-
此代码不起作用。除非您将
a[5]更改为a[6] -
它没有。这是未定义的行为。
-
轻率的答案是“靠运气”。更深思熟虑的答案可以在下面找到。
-
当前标题含糊不清,对未来有相同问题的访问者没有用处。
标签: c++