前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >2022-08-05:以下go语言代码输出什么?A:65, string;B:A, string;C:65, int;D:报错。 package main i

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

原创
作者头像
福大大架构师每日一题
发布2022-08-05 21:57:41
3090
发布2022-08-05 21:57:41
举报

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

代码语言:go
复制
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。

在这里插入图片描述
在这里插入图片描述

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档