go中布尔类型bool的用法

示例
// bool布尔类型的用法
package main

import (
    "fmt"
    "unsafe"
)

func main() {
    // bool类型
    b1 := false
    fmt.Printf("b1的值为 %t, 类型为 %T, 占 %d 个字节\n", b1, b1, unsafe.Sizeof(b1)) // b1的值为 false, 类型为 bool, 占 1 个字节
    // b1 = 1 会报错: cannot use 1 (type int) as type bool in assignment
    // 因为b1是bool类型,只能取值true或者false
        
    // 不可以用0或者非0的整数替代false或者true,这点与C语言不同
    // n1 := 1
    // 错误:non-bool n1 (type int) used as if condition
    // if n1 {
    //     fmt.Printf("n1 = %d\n", n1)    
    // }
        
    // 错误:cannot use 0 (type int) as type bool in assignment
    // var b2 bool = 0 
    // fmt.Printf("b2 = %t\n", b2)    
}
总结

posted @ 2019-11-08 09:59  勾践  阅读(3183)  评论(0编辑  收藏  举报