在C中,使用++i和之间有什么区别i++,哪些应该在for循环的增量块中使用? ++i将增加值的值i,然后返回递增的值。 i = 1; j = ++i; (i is 2, j is 2) i++将递增值的值i,但返回在i递增之前保持的原始值。 i = 1; j = i++; (i is 2, j is 1) 对于一个for循环,要么工作。++i似乎更常见,也许是因为这是K&R中使用的。 在任何情况下,遵循准则“宁可++i过i++”,你会不会出问题。 有一对夫妇的关于效率的意见++i和i++。在任何非学生项目编译器中,都没有性能差异。您可以通过查看生成的代码来验证这一点,这些代码是相同的。 效率问题很有意思……这是我尝试回答的问题: C ++中的i ++和++ i之间是否存在性能差异? 正如On Freund所说,对于C ++对象来说,它是不同的,因为它operator++()是一个函数,编译器无法知道如何优化临时对象的创建以保存中间值。 i ++被称为Post Increment,而++ i被称为Pre Increment。 i++ i++是后增量,因为它i在操作结束后将值增加1。 让我们看看以下示例: int i = 1, j; j = i++; 这里的价值j =