005 ++ я и я ++ принцип

 

/ * 
Каталог: 
   код , чтобы проверить 
   два принципа компиляции 
   три пародии функции 
* /

 

Испытательный код
INT основных () 
{ 

    Int я = 3 ;
    INT к = 0 ;
    INT т = 0 ; 

    к = ++ я; 
    Е ( " к =% ди =% d \ п " , к, I); 

    м = я ++ ; 
    Е ( " м =% ди =% d " , т, I); 

    вернуться  0 ; 
} 

/ * 
// результат 
к = 4 я = 4 
м = 4 я = 5 
* /

 

Два принципа компиляции
    к = ++ я ;
00044E63   мы          EAX, DWORD PTR [я]  
 00044E66   добавить          EAX, 1   
00044E69   мов          DWORD PTR [I], EAX  
 00044E6C   мы          ECX, DWORD PTR [I]  
 00044E6F   мов          DWORD PTR [K], ECX   

    т = ++ ;
00044E87   мы          EAX, DWORD PTR [I]  
 00044E8A   мов          DWORD PTR [м], EAX  
 00044E8D   мы          ECX, DWORD PTR [я]  
 00044E90   добавить          ECX, 1   
00044E93   мов         DWORD PTR [I], ECX  

 

Функция Три пародии
# include " stdafx.h " 


INT FirstPlus ( INT * пинта) 
{
     * Pint = * пинта + 1 ;
    вернуться * пинта; 
} 

INT AfterPlus ( INT * пинта) 
{ 
    INT nReturn = 0 ; 

    nReturn = * пинта;
    * Pint = * пинта + 1 ; 

    вернуться nReturn; 
} 


INT основных () 
{ 
    Int я = 3 ;
    INT к = 0 ;
    ИНТт = 0 ; 

    Е ( " к =% ди =% d \ п " , к, I); 
    K = FirstPlus (& я); 
    Е ( " к =% ди =% d \ N \ N " , к, I); 

    Е ( " м =% ди =% d \ п " , т, I); 
    м = AfterPlus (& я); 
    Е ( " м =% ди =% d " , т, I); 

    вернуться  0 ; 
} 

/ * 
// результат 
к = 0 я = 3 
к = 4 я = 4 

м = 0 я = 4 
м = 4 я = 5 
* /

 

 

рекомендация

отwww.cnblogs.com/huafan/p/11484978.html