php - 初始化然后单行输出

标签 php c++

PHP

<?php 
    $x = 10; 
    echo $x = 20;
?>


C++

#include<iostream>
using namespace std;

int main(){

    int x = 10;

    cout << x = 20;

    return 0;

}

为什么在 php 中初始化然后在一行中输出有效,在 c++ 中却不起作用?

最佳答案

  • 这个:cout << x = 20; 不是初始化。初始化是将初始值分配给变量,因此在您的情况下,它是在第一个字符串中完成的:int x = 10; .
  • 你在 PhP 中有 2 行代码,而不是一行。
  • C++ 中发生的事情是由于运算符优先级而发生的。

运算符优先级基本上是运算符应该以什么顺序执行。这就像在数学中 */发生在 + 之前和 - .

operator<<在 C++ 中的优先级高于 operator= , 所以它会先被执行,然后才是 operator=将会发生。

Operator precedence table

关于php - 初始化然后单行输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12156905/

相关文章:

php - 将 PHP 用于 Flash/SWF 地址应用程序替代内容

php - 在 php 中将 MS Word 文档转换为 html

php - 通知: Undefined index: username PHP and MySQL

c# - 游戏编程 ~ SDL/Allegro/SFML/或游戏引擎

javascript - Vuejs 动态切换类在 Laravel Blade 模板中不起作用

php - 重音 "e"即使在元标记之后也显示为问号

c++ - 时间复杂度相同但运行时间差异很大

c++ - glDrawArrays 访问冲突

c++ - friend 类概念如何不需要前向声明(forward declaration)?

c++ - WS_EX_TOOLWINDOW 在窗口销毁时跳转到背景