计算++和++计数,何时使用哪个?

时间:2014-01-17 13:14:29

标签: c# increment

所以我遇到了这个小小的递增方法

因为高中和大学我习惯了这种方法

char[] NewArray = new char[5] //I forgot how to declare an array

string temp;

console.writeline("Enter 5 letters)

for (i=0; i<5;i++)
{
   NewArray[i] = console.readline()
}

现在基于此代码

我声明了一个带有5个“空格”的char数组,然后我向控制台输出一条消息,要求用户输入5个值

所以i = 0,readline例如ç

因此,在console.readline statment之前,i = 0,然后它继续通过for循环,然后返回到循环的开头,在再次执行console.readline之前递增i = 1

这与“++ i”有何不同,“++ i”在for循环中的作用是什么?

4 个答案:

答案 0 :(得分:8)

++ x是预增量,x ++是后增量,第一个x在使用前递增,第二个x在使用后递增。

如果你写x ++或++ x它们是相同的; 如果x=5; x++=6++x=6

但是如果你执行x++ + x++(5 + 6)它会给你不同的结果将是11

但是如果你执行x++ + ++x(5 + 7)它会给你不同的结果将是12

但是如果你执行++x + ++x(6 + 7)它会给你不同的结果将是13

答案 1 :(得分:7)

count++是后增量,其中++count是预增量。假设您写count++表示执行此语句后的值增加。但是如果++count值在执行此行时会增加。

答案 2 :(得分:1)

for循环没有区别。因为如果你的条件为真,一旦for循环执行,那么它就会执行你的步骤。所以这个:

for(int=0; i<4; i++)

等于:

for(int=0; i<4; ++i)

您可以认为它与以下内容相同:

i++;

 ++i;

答案 3 :(得分:1)

作为补充信息。这就是你可以想象实现两个不同运算符的方法:

前缀:

int operator++ () { 
    //let "this" be the int where you call the operator on
    this = this + 1;
    return this;
}

后缀:

int operator++ (int) { //the dummy int here denotes postfix by convention
    //let "this" be the int where you call the operator on
    int tmp = this; //store a copy value of the integer (overhead with regards to prefix version)
    this = this + 1; //increment
    return tmp; //return the "pre-incremented" value
}