go语言--语言常量
Posted 清风明月li
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了go语言--语言常量相关的知识,希望对你有一定的参考价值。
/*
1.go语言常量
常量是一个简单的标识符,在程序运行时,不会被修改的量
常量中的数据类型只能是布尔型,数字型(整形、浮点型和复数)和字符串型。
定义格式为
const b type = value
2.根据省略类型说明符[type],根据变量的值来推断其类型。
显示类型定义: const b string = "abc"
隐示类型定义: const b = "abc"
多个相同类型的声明可以简写为:
const a, b = value1 , value2
package main
import "fmt"
func main()
const Length int = 200
const WIDTH int = 5
var area int
const a,b,c = 1, false, "str"
area = Length WIDTH
fmt.Printf("面积为 :%d", area)
println()
println(a,b,c)
/
/*
package main
import "unsafe"
const (
a = "ab
b = len(a)
c = unsafe.Sizeof(a)
)
func main()
println(a,b,c)
*/
/
3.go语言运算符
运算符用于在程序运行时执行数据或逻辑运算
go语言内置的运算符有:
算术运算符(+-% ++ —- /)
关系运算符 (== != > < >= <= )
逻辑运算符 (&&与 ||或 !非)
位运算符 (对整数在内存中的二进制位进行操作)
赋值运算符(= += -= = /= %= <<= >>= &= ^= |=)
其他运算符 (&返回变量存储地址 指针变量)
//算术运算符
package main
import "fmt"
func main()
var a int = 21
var b int = 10
var c int
c = a + b
fmt.Printf("第一行 - c 的值为 %d\\n", c)
c = a - b
fmt.Printf("第二行 - c 的值为 %d\\n", c)
c = a * b
fmt.Printf("第三行 - c 的值为 %d\\n", c )
c = a / b
fmt.Printf("第四行 - c 的值为 %d\\n", c )
c = a % b
fmt.Printf("第五行 - c 的值为 %d\\n", c )
a++
fmt.Printf("第六行 - a 的值为 %d\\n", a )
b--
fmt.Printf("第七行 - b 的值为 %d\\n", b )
package main
import "fmt"
func main()
var a int = 21
var b int = 10
if ( a == b)
fmt.Printf("第一行 - a 等于 b\\n")
else
fmt.Printf("第一行 - a 不等于 b\\n")
if (a < b)
fmt.Printf("第二行 - a 小于 b \\n")
else
fmt.Printf("第二行 - a 不小于 b \\n")
if ( a > b)
fmt.Printf("第三行 - a 大于 b \\n")
a = 5
b = 20
if ( a <= b )
fmt.Printf("第四行 - a 小于等于 b\\n" )
if ( b >= a )
fmt.Printf("第五行 - b 大于等于 a\\n" )
//逻辑运算符
package main
import "fmt"
func main()
var a bool = true
var b bool = false
if ( a && b)
fmt.Printf("第一行 - 条件为true\\n")
if ( a || b)
fmt.Printf("第二行 - 条件为true\\n")
//位运算符 .位运算符对整数在内存中的二进制位进行操作。& , | ,^
package main
import "fmt"
func main()
var a uint = 60
var b uint = 13
var c uint = 0
c = a ^ b
fmt.Printf("第一行 -c 的值为 %d",c)
//赋值运算符,简单的赋值运算符,将一个表达式的值赋值给一个左值
略
//其他运算符,& 返回变量存储地址,&a将给出变量的实际地址,指针变量,a是一个指针变量。
package main
import "fmt"
func main()
var a int = 4
var b int32
var c float32
var ptr *int
fmt.Printf("第一行 - a 变量类型为 = %T\\n", a )
fmt.Printf("第二行 - b 变量类型为 = %T\\n", b )
fmt.Printf("第三行 - c 变量类型为 = %T\\n", c )
ptr= &a
fmt.Printf("a 的值为 %d\\n",a )
fmt.Printf("*ptr 为 %d\\n", *ptr )
*/
//运算符的优先级 。运算符是有优先级的,二元运算符的运算方向是从左到右,/<< >> & &^ > =-|^ > == != < > > && > || 可以通过括号来提升某个表达式的整体运算符优先级
package main
import "fmt"
func main()
var a int = 20
var b int = 10
var c int = 15
var d int = 5
var e int ;
e = (a+b) c /d;
fmt.Printf("(a + b) c / d 的值为 : %d\\n", e );
e = ((a + b) c) / d; // (30 15 ) / 5
fmt.Printf("((a + b) c) / d 的值为 : %d\\n" , e );
e = (a + b) (c / d); // (30) (15/5)
fmt.Printf("(a + b) * (c / d) 的值为 : %d\\n", e );
e = a + (b c) / d; // 20 + (150/5)
fmt.Printf("a + (b c) / d 的值为 : %d\\n" , e );
以上是关于go语言--语言常量的主要内容,如果未能解决你的问题,请参考以下文章