zoukankan      html  css  js  c++  java
  • echo '1'.print(2)+3; 的输出结果为什么是511

      今天看到一道有趣的题目,如上所示。结果为什么会是511呢?
    
      这个结果的计算分为三步来理解:
    
      首先计算的是 右边print(2)+3,这个你可以直接理解成print(2+3),得到的结果是5。而print是一个函数,
      它的返回值总是1。
    
      第二步就是echo '1'.print('结果')(返回值是1),因此会得到11的结果。
    
      第三部就是将之前计算的结果进行连接,并最终进行输出,得到的结果就是511了。
    
      类似的,可以解释为什么echo '2' . print(2) + 3;的结果是521,
                        echo '1' . (print '2') + 3;结果是214
    
      当然啦,实际的开发并不会出现这种情况!建议在开发中,最好不要将echo与print混合起来使用。
      这里仅是一个有趣味的题而已!
    
  • 相关阅读:
    高二下期末考试
    LG月赛.7
    CF1187E
    P5440 【XR-2】奇迹
    P1084 疫情控制
    P1083 借教室
    P2680 运输计划
    P3128 [USACO15DEC]最大流Max Flow
    博弈入门
    HDU 1907
  • 原文地址:https://www.cnblogs.com/cmderq/p/9130846.html
Copyright © 2011-2022 走看看