<代码>++i值为以下>:i
。 因此,如果从零开始,你就第一次分配价值1。 参看。 分配值,但请why, 寄给这里的虫 can。
i, 可在i
上通过i++
或加以修改。 ++i
是未经界定的行为,除非两者之间有所谓的“相同点”。 在此情况下,见。 语言这一相当复杂的部分没有界定的行为和顺序。
尽管这一行为没有按照标准加以界定,而且可能无法从一到二者之间保持一致,但显然,你的方案已经做到了thing。 很显然,它根本就没有确定指数0(至少在第一版之前,不在此列),而考虑到 lo体在<><>之前发生,这一点是可以理解的。 “for”的最后一个部分,因此,在分配给你时,你会以这种原始记忆为代价。 它指定了<代码>1至index1
等。
这意味着,它可能还试图将数值<代码>5至c[5]
,即所谓的“变异”类,以及更不明确的行为,以你已经做的事情为准。 <>Attempting to it may overwrites other memory, which on any given day may or may not contained some important.
定本是将某些价值分配给<代码>c[0],不试图指定<代码>c[5],而该编码确实存在任何进展,不试图“同时”使用<代码>i。 通常请你写:
for (int i = 0; i < n; ++i) {
c[i] = i;
printf("%d
", c[i];
}
如果你出于某种原因急于在 lo物的第三条款中分配,你可以使用 com操作器提出顺序点:
for (int i = 0; i < n; c[i] = i, ++i) {
}
但当然,如果你这样做,你可以在休息室打印c[i]
的价值。 尚未分配,因为第3条没有在每条休息期结束前进行评估。
You could also try c[i] = i+1, ++i
, but not ++i, c[i] = i
because then we re back to trying to assign to c[5]
, on the last iteration.