不同语言操作符的优先级

看到标题,可能会心生疑惑: 这么基础且重要的操作,不同语言不应该是一致的吗?

并不一定,比如对于右移运算和加法运算,Go就与其他多数语言表现得不一致:

Go:

go 复制代码
package main

import "fmt"

func main() {
    fmt.Println(1+2>>1) // 2
}

Java:

java 复制代码
import java.io.*;
class test  
{
	public static void main (String[] args) throws java.lang.Exception
	{
		System.out.println(1+2>>1); // 1
	}
}

C/C++:

C 复制代码
#include <stdio.h>

int main(void) { 

    int a = 1+2>>1;
	printf("%d\n",a); // 1
	return 0;
}

nodejs:

js 复制代码
console.log(1+2>>1); // 1

python:

python 复制代码
#!/usr/bin/python
# -*- coding: utf-8 -*-
import sys
if True :
	aaa=1+2>>1 
	print(aaa) // 1
	print(sys.version) //3.8.6 (default, Sep 24 2020, 21:45:12)  [GCC 8.3.0]

php:

php 复制代码
<?php
$aa=1+2>>1;
echo 'hello '.'1+2>>1运算结果为:'.$aa."\n"; // hello 1+2>>1运算结果为:1
echo date('Y-m-d H:i:s',time())."\n"; // 20xx-08-28 14:33:23
echo "PHP版本:".phpversion();  // PHP版本:7.4.10
?>
相关推荐
captain3761 小时前
MyBatis操作数据库(入门2)
java·数据库·spring boot·后端·spring·mybatis
IT_陈寒2 小时前
Java序列化踩坑记:对象循环引用让我加班两小时
前端·人工智能·后端
泡海椒2 小时前
05-雷达图多维画像-信用评级多维画像
后端
王中阳Go2 小时前
5.27 分钟干完后端和全部测试:一场三小时笔试的五个失分点,四个不在代码上
大数据·数据库·人工智能·后端·大语言模型
大哥43092 小时前
Modbus 的"字序":一个配错就变成天文数字,或者干脆变成 0
后端
岩钧2 小时前
New API 源码解析:一个生产级 AI 网关的架构与实现
后端
学到老活到老3 小时前
第 24 集:配置文件写了 80,Spring Boot 为什么读到 90?
java·后端·spring
用户360055579003 小时前
Kestrel_VLLM - 25 · 全注意力层设备化、整层对拍与访存粒度
后端
yliucherish3 小时前
从零实现一个 SQL 注入检测引擎:报错注入与布尔盲注的误报控制
后端
bigbread3 小时前
状态模式-住院患者状态管理
后端