• 代码临时i++ and ++i的误解


    最近研究代码临时,稍微总结一下,以后继续补充:

        不知在那本书上看到 ++i比i++要快(i++要需一个临时量变存储i的值后再++),就住记这个始终没测试,所以在写代码的时候 始终就应用++i认为它快。明天测试了下发明并非这么回事,始终被解误。所以写了单简的demo测试了下:

    int main()
    {
            int a,c;
    	a = 0;
    
    	a++;
    	++a;
    
    	c =a++;
    	c = ++a;
    
    	c = a+1;
    	return 0;
    }

        看下反汇编代码吧(Windows上):

        每日一道理
    时间好比一条小溪,它能招引我们奔向生活的海洋;时间如同一叶扁舟,它将帮助我们驶向理想的彼岸;时间犹如一支画笔,它会指点我们描绘人生的画卷。
    int a,c;
    	a = 0;
    00181B88  mov         dword ptr [a],0  
    	a++;
    00181B92  mov         eax,dword ptr [a]  
    00181B98  add         eax,1  
    00181B9B  mov         dword ptr [a],eax  
    	++a;
    00181BA1  mov         eax,dword ptr [a]  
    00181BA7  add         eax,1  
    00181BAA  mov         dword ptr [a],eax  
    	c =a++;
    00181BB0  mov         eax,dword ptr [a]  
    00181BB6  mov         dword ptr [c],eax  
    00181BBC  mov         ecx,dword ptr [a]  
    00181BC2  add         ecx,1  
    00181BC5  mov         dword ptr [a],ecx  
    	c = ++a;
    00181BCB  mov         eax,dword ptr [a]  
    00181BD1  add         eax,1  
    00181BD4  mov         dword ptr [a],eax  
    00181BDA  mov         ecx,dword ptr [a]  
    00181BE0  mov         dword ptr [c],ecx  
    
    	c = a+1;
    00181BE6  mov         eax,dword ptr [a]  
    00181BEC  add         eax,1  
    00181BEF  mov         dword ptr [c],ea
    	return 0;
    00181BF5  xor         eax,eax  
    }

        一看就白明了

    文章结束给大家分享下程序员的一些笑话语录: 刹车失灵
    有一个物理学家,工程师和一个程序员驾驶着一辆汽车行驶在阿尔卑斯山脉 上,在下山的时候,忽然,汽车的刹车失灵了,汽车无法控制地向下冲去, 眼看前面就是一个悬崖峭壁,但是很幸运的是在这个悬崖的前面有一些小树 让他们的汽车停了下来, 而没有掉下山去。 三个惊魂未定地从车里爬了出来。
    物理学家说, “我觉得我们应该建立一个模型来模拟在下山过程中刹车片在高 温情况下失灵的情形”。
    工程师说, “我在车的后备厢来有个扳手, 要不我们把车拆开看看到底是什么 原因”。
    程序员说,“为什么我们不找个相同的车再来一次以重现这个问题呢?”

  • 相关阅读:
    剑指offer-二维数组中的查找
    TF-IDF(term frequency–inverse document frequency)
    Java实现中文字符串的排序功能
    当前课程
    【R】资源整理
    CentOS相关
    【转】Setting up SDL Extension Libraries on MinGW
    【转】Setting up SDL Extension Libraries on Visual Studio 2010 Ultimate
    【转】Setting up SDL Extension Libraries on Code::Blocks 12.11
    【转】Setting up SDL Extension Libraries on Visual Studio 2019 Community
  • 原文地址:https://www.cnblogs.com/jiangu66/p/3057430.html
Copyright © 2020-2023  润新知