小编Pol*_*ang的帖子

Golang将一个项目附加到切片上

为什么切片a保持不变?是否append()产生一个新的片?

package main

import (
    "fmt"
)

var a = make([]int, 7, 8)

func Test(slice []int) {
    slice = append(slice, 100)
    fmt.Println(slice)
}

func main() {
    for i := 0; i < 7; i++ {
        a[i] = i
    }

    Test(a)
    fmt.Println(a)
}
Run Code Online (Sandbox Code Playgroud)

输出:

[0 1 2 3 4 5 6 100]
[0 1 2 3 4 5 6]
Run Code Online (Sandbox Code Playgroud)

go

65
推荐指数
5
解决办法
12万
查看次数

Can Go代码在windows中生成dll还是C++/C#可以调用golang代码?

可以在Windows上调用Go函数C++C#代码吗?Go支持在Windows中生成dll吗?

go

11
推荐指数
1
解决办法
1万
查看次数

在net.DialTCP中指定本地IP地址

package main

import (
    "fmt"
    "net"
)

func main() {

    var localaddr net.TCPAddr
    var remoteaddr net.TCPAddr
    localaddr.IP = net.ParseIP("192.168.1.104")
    localaddr.Port = 6000
    remoteaddr.IP = net.ParseIP("192.168.1.104")
    remoteaddr.Port = 5000

    if localaddr.IP == nil || remoteaddr.IP == nil {
        fmt.Println("error")
    }

    if _, err := net.DialTCP("tcp", &localaddr, &remoteaddr); err != nil {
        fmt.Println(err)
    }

    fmt.Println("End")

}
Run Code Online (Sandbox Code Playgroud)

如果该函数指定本地 IP 地址,它总是报告运行时错误“dial tcp 192.168.1.104:5000: 提供了无效的参数。” 我很困惑,本地 IP 地址应该始终为零吗?

go版本:1.1 Beta 操作系统:Win7 64位

在go 1.0.3中尝试过,看起来还可以

go

5
推荐指数
1
解决办法
4833
查看次数

将数据从字节切片解码到Uint32

package main

import (
        "bytes"
        "encoding/binary"
        "fmt"
)

func main() {
        aa := uint(0xFFFFFFFF)
        fmt.Println(aa)
        byteNewbuf := []byte{0xFF, 0xFF, 0xFF, 0xFF}
        buf := bytes.NewBuffer(byteNewbuf)
        tt, _ := binary.ReadUvarint(buf)
        fmt.Println(tt)
}
Run Code Online (Sandbox Code Playgroud)

需要将4字节数组转换为uint32,但为什么结果不一样?go verion:beta 1.1

go

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

Go中的网络编程

我正在学习Go for network programming.问题是Go文档太简单了.例如,我不知道何时使用net.DialTCP,何时使用TCPListener对象AcceptTCP,有什么区别?客户端如何与其他客户端通信?不是客户端到服务器.

go

4
推荐指数
1
解决办法
588
查看次数

为什么我不能从函数返回显式类型的结果枚举?

简单的代码如下:

fn main() {
    let R1 = TestResult(10, 20);
    match R1 {
        Ok(value) => println!("{}", value),
        Err(error) => println!("{}", error),
    }
}

fn TestResult(a1: i32, a2: i32) -> Result<i32, String> {
    if a1 > a2 {
        //Compile Pass
        //Ok(100)

        //Compile with error why ?
        std::result::Result<i32, std::string::String>::Ok(100)
    } else {
        Err(String::from("Error Happens!"))
    }
}
Run Code Online (Sandbox Code Playgroud)

我收到了错误

error: expected one of `!`, `.`, `::`, `;`, `?`, `{`, `}`, or an operator, found `,`
  --> src/main.rs:15:32
   |
15 |         std::result::Result<i32, std::string::String>::Ok(100)
   |                                ^ expected …
Run Code Online (Sandbox Code Playgroud)

enums rust

0
推荐指数
1
解决办法
773
查看次数

标签 统计

go ×5

enums ×1

rust ×1