golang“语法错误:意外的名称,期望)”和“语法错误:意外的),在语句末尾”

问题描述 投票:-3回答:2

我刚刚开始学习golang已有几个星期,并开始学习频道和常规程序。但是我的代码似乎有错误,我似乎找不到它。

package main
import (
"fmt"
"time"
"runtime"
)

func isPrime(n int) bool {
    for i:=2; i<n; i++ {
        if n%i == 0 {
            return false
        }
    }
    return true
}

func findPrime(primes []int, from, to int, ch chan int ) {
        for n:=from; n<to; n++ {
        if isPrime(n) {
            ch <- n
    }
}

func main() {
    fmt.Println("running CPU:", runtime.NumCPU())
    start := time.Now()
    step := 200

    ch := make(chan int)
    for i:=2; i<2000; i=i+step {
        go findPrimes(primes, i, i+step)
    }

    count := 0
    for count < 2000{
        count++
        n:= <-ch
        fmt.Println(n)      
    }
    fmt.Printf(" %v \n", count)
    fmt.Printf("time: %v\n", time.Since(start))
  }
go syntax
2个回答
0
投票

程序缺少功能}的结尾findPrime。还有其他错误,但这足以使您继续前进。

https://play.golang.org/p/E4b0NK8ldjl


0
投票

对于上述错误,您需要为上述功能正确关闭parens。

func findPrime(primes []int, from, to int, ch chan int) {
    for n := from; n < to; n++ {
        if isPrime(n) {
            ch <- n
        }
    }
}

如果您要修复其他错误(程序中已经存在此错误,请告诉我。)>

快乐编码😊

© www.soinside.com 2019 - 2024. All rights reserved.