日期:2014-05-20  浏览次数:21016 次

i++和++i的具体区别
int i=5;
int j;

1.ConSole.WriteLine(i++);

1.ConSole.WriteLine(++i);

3.j=i++;
ConSole.WriteLine(j);

4.j=++i;
ConSole.WriteLine(j);

5.i=i++;
ConSole.WriteLine(i);

6.i=++i;
ConSole.WriteLine(i);

上面这六道题的输出结果是什么?为什么?
详细说说为什么,毕竟答案我一试就知道。


------解决方案--------------------
i++相当于
{
tmp = i;
i=i+1;
return tmp;
}
++i相当于
{
i=i+1;
return i;
}
------解决方案--------------------
我怎么感觉一直没人真正回答LZ的问题呢?

“最关键的是i=i++这一个的解释是怎样的?”
C# code

        static void Main(string[] args)
        {
            int x;
            x = 5;
            x = x++;
            //Console.WriteLine("d"+(x++) + (x++) + (x++));

            Console.WriteLine(x);

            x = 5;
            x = ++x;
            Console.WriteLine(x);
            //x = 5;
            //int y = (x++) + (x++) + (x++); 
            //Console.WriteLine(y);
        }