【发布时间】:2021-04-22 10:09:51
【问题描述】:
在for 循环中,因为最后一个(更新)表达式不能涉及赋值,所以使用前缀或后缀递增/递减是否微不足道?例如:
for (int i=0; i < 10; i++) {...}
对比
for (int i=0; i < 10; ++i) {...}
在for循环的更新表达式中,是否会出现前缀或后缀会很重要的情况?
【问题讨论】:
-
"last (update) 表达式不能涉及赋值" 为什么你认为它不能?
-
@dxiv 实际上,我没有。我只是从未见过或使用过它,所以也许我错了......
-
@samuelbrody1249
int n = -1; for(int i = 0; i < 10; n = i++); -
for (node *curr = head; curr != NULL; curr = curr->next) { … }用于处理链表。 -
在 C 语言中,编译器会同等对待这两者——如果不是,您需要更好的编译器!在 C++ 中,由于可以为用户定义的类型分别实现前缀和后缀运算符,因此存在与前缀运算符不存在的后缀增量相关的开销。因此,在 C++ 中,通常最好使用前缀表示法。
标签: c