不同语言操作符的优先级

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

并不一定,比如对于右移运算和加法运算,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
?>
相关推荐
Ciderw7 分钟前
MySQL为什么使用B+树?B+树和B树的区别
c++·后端·b树·mysql·面试·golang·b+树
计算机-秋大田11 分钟前
基于微信小程序的汽车保养系统设计与实现(LW+源码+讲解)
spring boot·后端·微信小程序·小程序·课程设计
齐雅彤15 分钟前
Bash语言的并发编程
开发语言·后端·golang
峰子201230 分钟前
B站评论系统的多级存储架构
开发语言·数据库·分布式·后端·golang·tidb
秋淮安1 小时前
后端开发Web
后端·web
马剑威(威哥爱编程)3 小时前
2025春招 SpringCloud 面试题汇总
后端·spring·spring cloud
Quantum&Coder3 小时前
Objective-C语言的计算机基础
开发语言·后端·golang
嘿嘿4 小时前
Grafana 快速搭建go-metrics 仪表盘备忘
后端·docker·go
计算机学姐4 小时前
基于微信小程序的民宿预订管理系统
java·vue.js·spring boot·后端·mysql·微信小程序·小程序
Code侠客行5 小时前
Scala语言的编程范式
开发语言·后端·golang