首页 > 其他分享 >Go语言的Printf用法

Go语言的Printf用法

时间:2023-07-25 21:45:28浏览次数:32  
标签:输出 格式化 fmt 用法 Variable Printf Go Type

在 Go 语言中,Printf 是用于格式化输出的函数,用于将数据以指定格式打印到标准输出或其他输出流。其中,%pPrintf 函数的一个格式化动词,用于输出指针的值。

以下是 %p 的详细说明以及其他常用的格式化动词:

  1. %p
    %p 用于格式化输出指针的值。它将一个指针的十六进制值打印出来,前面带有 "0x" 前缀。指针变量存储的是内存地址,通过 %p 可以将这个地址以十六进制的形式显示出来。

示例:

package main

import "fmt"

func main() {
    var x int = 42
    p := &x
    fmt.Printf("Pointer p: %p\n", p)
}

输出:

Pointer p: 0xc000016078
  1. 其他常用格式化动词:
    Printf 函数中,除了 %p,还有许多其他格式化动词可用于输出不同类型的数据。
  • %d:以十进制格式输出整数。
  • %f:以浮点数格式输出浮点数。
  • %s:以字符串格式输出字符串。
  • %t:以布尔值格式输出 true 或 false。
  • %v:以默认格式输出变量的值,可以用于多种数据类型。
  • %T:输出变量的类型信息。

示例:

package main

import "fmt"

func main() {
    var num int = 42
    var pi float64 = 3.1415926
    var name string = "John Doe"
    var isActive bool = true

    fmt.Printf("Integer: %d\n", num)
    fmt.Printf("Float: %f\n", pi)
    fmt.Printf("String: %s\n", name)
    fmt.Printf("Boolean: %t\n", isActive)
    fmt.Printf("Variable: %v\n", num)
    fmt.Printf("Variable: %v\n", pi)
    fmt.Printf("Variable: %v\n", name)
    fmt.Printf("Variable: %v\n", isActive)
    fmt.Printf("Type of num: %T\n", num)
    fmt.Printf("Type of pi: %T\n", pi)
    fmt.Printf("Type of name: %T\n", name)
    fmt.Printf("Type of isActive: %T\n", isActive)
}

输出:

Integer: 42
Float: 3.141593
String: John Doe
Boolean: true
Variable: 42
Variable: 3.1415926
Variable: John Doe
Variable: true
Type of num: int
Type of pi: float64
Type of name: string
Type of isActive: bool

这些格式化动词可以根据数据类型和输出的需求进行灵活的使用,方便开发者进行数据的格式化输出。

标签:输出,格式化,fmt,用法,Variable,Printf,Go,Type
From: https://www.cnblogs.com/tangjicheng/p/17581122.html

相关文章

  • javaweb项目搭建及Servlet用法
    一.Javaweb1.常见软件系统体系结构1.C/S架构C/S结构即客户端/服务器(Client/Server),例如QQ;需要编写服务器端程序,以及客户端程序,例如我们安装的就是QQ的客户端程序;缺点:软件更新时需要同时更新客户端和服务器端两端,比较麻烦;优点:安全性比较好。2.B/S架构B/S结构即浏览器/服......
  • go刷题Leetcode,生成文件夹与go文件模板
    go生成文件夹与模板起因以前是用C/C++刷Leetcode时,将多个C/CPP文件放在同一个目录下,没有出任何问题,但是换成Go语言刷题。在一个目录下创建多个go文件,每个文件都是以下packagemainfuncmain(){}在vscode下会出问题,会报错,这让我很难受。这样做,在Goland下没有问题,Go......
  • Navigation的用法
    一.Navigation的诞生单个Activity嵌套多个Fragment的UI架构模式,已经被大多数的Android工程师所接受和采用。但是,对Fragment的管理一直是一件比较麻烦的事情。我们需要通过FragmentManager和FragmentTransaction来管理Fragment之间的切换。页面的切换通常还包括对应用程序App......
  • Jmeter配置起来太繁琐?试试RunnerGo
    在用jmeter做性能测试时想看完整一点的测试报告,想配置阶梯模式来压测,想配置不同的接口并发这些都需要安装插件并且影响机器性能,想做自动化测试还得放到jenkins,这些配置起来太繁琐。今天给大家推荐一款测试平台RunnerGo,内置各种测试工具解决这些痛点。不需要扩展插件即可实时查看测......
  • goaccess日志分析器使用
    一、安装goaccess软件1、安装依赖yum-yinstalllibmaxminddb-develncurses-libsncurses-developensslopenssl-devel2、下载软件wgethttps://tar.goaccess.io/goaccess-1.4.tar.gz3、编译安装tar-xzvfgoaccess-1.4.tar.gz-C/usr/local/cd/usr/local/goaccess-......
  • 纯手撸 Django web框架批量删除redis的key
    纯手撸Djangoweb框架批量删除redis的key环境环境参照上一章节博客部署环境,在此基础上进行功能加强【批量删除指定前缀的key】,然后再CI里面掉这个接口地址即可清理redis缓存的key,更加高效的运维工作修改视图##mysite/myweb1/views.py#Createyourviewshere.fromdj......
  • Go语言中的iface和eface
    iface和eface是Go语言中用于实现接口的两种内部数据结构。它们都用于在运行时表示接口值,但它们在处理不同类型的接口上有不同的用途和区别。iface(interfacevalue):iface是用于表示具有非空接口值的数据结构。iface结构包含两个字段:一个指向实际值的指针和一个指向类型......
  • 正则表达式中test、exec、match的区别介绍及括号的用法
    test、exec、match的简单区别1、testtest返回Boolean,查找对应的字符串中是否存在模式。varstr="1a1b1c";varreg=newRegExp("1.","");alert(reg.test(str));//true2、execexec查找并返回当前的匹配结果,并以数组的形式返回。 varstr="1a1b1c";varreg=newReg......
  • calico报错son: cannot unmarshal string into Go struct field NetConf.mtu of type
     于是describe查看宿主机的配置文件查看日志没有相关日志查看calico的相关配置文件值找到于是想着直接去修改calico的Configmap发现修改不成功便去查询宿主机映射的calico挂载文件把标记部分的string给成int去掉双引号,然后重启calico然后通过ansible分发到每台机器上an......
  • easy-ui展开行配置用法(两种)
    第一种:用expand属性<easy-custom-tablerowKey="id":expand="expand"//添加expand属性,属性值为一个对象:tableData="tableData":columns="columns":maxHeight="tableHeight":headerCellSty......