在程序中我们经常碰到这样的表达式计算:++a + b--
我们查看操作优先级别:从高向低b--,(++a,+ 同一级别)
从下面的代码中,可以清楚看到计算过程:

 class Program
    
{
        
static void Main(string[] args)
        
{
            
int a = 2;
            
int b = 1;
            Console.WriteLine(
+++ b--);
            Console.WriteLine(a);
            Console.WriteLine(b);

            
int i = 2;
            Console.WriteLine(
+++ i++);
            Console.WriteLine(i);

            Console.WriteLine(
"测试i++");
            
object ii = 10;
            
int k = Program.ijiajia(ref ii);
            Console.WriteLine(k);
            Console.WriteLine(ii);

            Console.WriteLine(
"测试++i");
            
object m = 5;
            
int n = Program.jiajiai(ref m);
            Console.WriteLine(m);
            Console.WriteLine(n);
            Console.Read();
        }


       
static int ijiajia(ref object i)
        
{
            
int temp = int.Parse(i.ToString());
            i 
= temp + 1;
            
return temp;
        }


        
static int jiajiai(ref object i)
        
{
            i 
= int.Parse(i.ToString()) + 1;
            
return  int.Parse(i.ToString());
        }

    }
计算结果:
4
3
0
6
4
测试i++
10
11
测试++i
6
6
posted on 2007-11-24 13:47  Injun  阅读(393)  评论(0编辑  收藏  举报