小编Anu*_*rma的帖子

如何在Go中打印布尔值?

正如我们%d对int所做的那样.布尔值的格式说明符是什么?

boolean go

40
推荐指数
3
解决办法
2万
查看次数

去语言警告和错误

GO语言似乎没有警告.我观察到很少的情况.1."声明并且未使用"(如果声明变量并且在任何地方都没有使用它会产生错误并且不编译程序)2."导入但未使用"(类似地,如果导入包而不在任何地方使用它会产生错误并且不编译程序)有人可以帮助.如果他们有任何指针.

go

10
推荐指数
2
解决办法
6467
查看次数

为什么我不能把开口括号放在下一行?

我尝试编译以下代码时遇到一个奇怪的错误:


    package main

    import fmt "fmt"

    func main()
    {
       var arr [3]int
       for i:=0; i<3; i++
       {
         fmt.Printf("%d",arr[i])
       }
    }

错误如下:


    unexpected semicolon or newline before {

在代码工作后更正后:


    package main

    import fmt "fmt"

    func main(){
       var arr [3]int
       for i:=0; i<3; i++{
         fmt.Printf("%d",arr[i])
       }
    }

GO语言这么严格打字吗?这也没有警告.这不是程序员的选择,他想如何格式化他的代码? 去语言警告和错误

error-handling go

2
推荐指数
3
解决办法
731
查看次数

为什么切片长度大于容量会产生运行时错误?

制作容量小于长度的切片


    package main

    import fmt "fmt"

    func main(){

     type b []int
     var k = make([]b, 10, 5)
     fmt.Printf("%d\n",k[8])
     }

尝试运行时会出现以下错误.


    panic: runtime error: makeslice: cap out of range

    runtime.panic+0x9e /go/src/pkg/runtime/proc.c:1060
            runtime.panic(0x453b00, 0x30020390)
    runtime.panicstring+0x94 /go/src/pkg/runtime/runtime.c:116
            runtime.panicstring(0x4afd6c, 0x40d80c)
    runtime.makeslice+0x70 /go/src/pkg/runtime/slice.c:24
            runtime.makeslice(0x44302c, 0xa, 0x0, 0x5, 0x0, ...)
    main.main+0x45 C:/GOEXCE~1/basics/DATATY~1/slice.go:8
            main.main()
    runtime.mainstart+0xf 386/asm.s:93
            runtime.mainstart()
    runtime.goexit /go/src/pkg/runtime/proc.c:178
            runtime.goexit()
    ----- goroutine created by -----
    _rt0_386+0xbf 386/asm.s:80

我的问题是容量能否小于长度?

如果'是'那么为什么会出现这个错误?
如果'不是为什么这是一个运行时错误,为什么不编译时?

go

2
推荐指数
2
解决办法
4845
查看次数

标签 统计

go ×4

boolean ×1

error-handling ×1