在C中,使用++i和之间有什么区别i++,哪些应该在for循环的增量块中使用?
我们有一个问题是Ci++和++i C之间有性能差异吗?
C++的答案是什么?
Python有一个有趣的for语句,允许您指定一个else子句.
在像这样的结构中:
for i in foo:
if bar(i):
break
else:
baz()
Run Code Online (Sandbox Code Playgroud)
该else子句在之后执行for,但仅在for正常终止时(不是由a break)终止.
我想知道C++中是否有相同的东西?我可以用for ... else吗?
确切重复:在C++中i ++和++ i之间是否存在性能差异?
确切重复:循环中i ++和++ i之间的区别?
什么更有效,i ++或++ i?
我只在Java和C/C++中使用过这个,但我真的要求实现它的所有语言.
在大学里我有一位教授告诉我们++我更有效率,但已经有几年了,我想从Stack Overflow社区获得意见.
对于我总是用于循环的post增量运算符,我并不是很清楚.我对post增量运算符的最新和新获得的理解如下:
int a = 5
int b = a++ //a will increment and return back its old value 5
so b = 5
Run Code Online (Sandbox Code Playgroud)
有了这些新知识,我决定理解/应用于我常用的后增量运算符的地方for.现在好像我迷失了,因为理论上我输错了输出
请考虑以下代码
for(int i=0 ; i< 3 ; i++)
{
std::cout << i;
}
Run Code Online (Sandbox Code Playgroud)
第一个循环
i starts with 0 which is less than 3 so ( increment by 1 however since its i++ it returns old value 0)
so cout should display 1 // But it displays 0
Run Code Online (Sandbox Code Playgroud)
第二圈
i is now 1 which is …Run Code Online (Sandbox Code Playgroud) 在下面的例子中我应该期望values.size()每次循环都会调用它吗?在这种情况下,引入临时vectorSize变量可能是有意义的.或者现代编译器是否能够通过识别向量大小无法改变来优化调用.
double sumVector(const std::vector<double>& values) {
double sum = 0.0;
for (size_t ii = 0; ii < values.size(); ++ii) {
sum += values.at(ii);
}
}
Run Code Online (Sandbox Code Playgroud)
请注意,我不关心是否有更有效的方法来对向量的内容求和,这个问题只是在for构造中使用size().
如果不使用结果值,i ++和++ i之间是否存在性能差异?
JavaScript的答案是什么?
例如,以下哪项更好?
1)
for(var i=0;i<max;i++){
//code
}
Run Code Online (Sandbox Code Playgroud)
2)
for(var i=0;i<max;++i){
//code
}
Run Code Online (Sandbox Code Playgroud) javascript performance operators pre-increment post-increment
你能简单解释一下我理解这个吗?
可能重复:
为什么在语句中的其他地方没有使用值的情况下使用++ i而不是i ++?
C++中的增量 - 何时使用x ++或++ x?
i++ vs. ++i
Run Code Online (Sandbox Code Playgroud)
什么时候在真实场景中使用?
可能重复:
C++中的增量 - 何时使用x ++或++ x?
我已经看过像循环中i++常用的东西for.但是当人们使用--而不是++出于某种原因,有些人倾向于写作--i而不是i--.
上次我检查时,它们都工作(至少在JavaScript中).谁能告诉我,如果是这样的话在其他C家族语言,如果是,为什么有些人喜欢--i来i--?