2022-08-05:以下go语言代码输出什么?A:65, string;B:A, string;C:65, int;D

2022-08-05:以下 go 语言代码输出什么?A:65, string;B:A, string;C:65, int;D:报错。

package main

import (
    "fmt"
)

func main() {
    num := 65
    str := string(num)
    fmt.Printf("%v, %T\n", str, str)
}

答案 2022-08-05:

这道题有选 A 的,也有选 D 的。但正确答案选 B。不过,如果你使用 go vet 检查,会提示:conversion from int to string yields a string of one rune, not a string of digits (did you mean fmt.Sprint (x)?)。
也就是说,如果要将数字 65 转为字符串,不能使用 string (num),如果使用这种方式转,得到的是一个 rune 的字符串表示,因为字面 A 的 ASCII 码是 65,因此这里输出结果是 A,string。

在这里插入图片描述

本作品采用《CC 协议》,转载必须注明作者和本文链接
微信公众号:福大大架构师每日一题。最新面试题,涉及 golang,rust,mysql,redis,云原生,算法,分布式,网络,操作系统。
未填写
文章
488
粉丝
23
喜欢
39
收藏
22
排名:441
访问:2.1 万
私信
所有博文
社区赞助商