C语言中的格式化输出符号:%d %c %p %x等

文章目录

  • 概览
  • %d
  • %c
  • %d和%c的区别
  • %p
  • %x %X
  • 输出浮点数
  • 参考

概览

C语言中的格式化输出符号有很多,以下是一些常见的:

%d 或 %i:用于输出十进制整数。
%u:用于输出无符号十进制整数。
%f:用于输出浮点数。
%s:用于输出字符串。
%c:用于输出字符。
%p:用于输出指针。
%x 或 %X:用于输出十六进制数,%x表示输出小写字母,%X表示输出大写字母。
%o:用于输出八进制数。
%e 或 %E:用于输出科学计数法表示的浮点数。
%g 或 %G:用于输出浮点数,但是没有无意义的零。
这些格式化输出符号可以在printf函数的格式字符串中使用,用来指定输出的格式。

%d

%d是C语言中的格式化输出符号,用于将整数值按照十进制格式输出到标准输出流(通常是控制台)。它可以用于printf函数中的格式化字符串中,指示要输出的整数的位置和格式。例如,"%d"可以用来输出一个整数变量的值。

%c

%c是C语言中的格式化输出符号,用于输出字符。在printf函数中,%c可以用来输出一个字符变量的值。在你的代码中,如果你想打印出数组元素的字符表示,你可以使用%c。

#include <stdio.h>int main() {unsigned char array[16];for (int i = 130; i < 146; i++){array[i] = i;//打印数组的每个元素的地址和值printf("array[%d] address is %p, value is %c\n", i, &array[i], array[i]);}// return 0;
}
printf("array[%d] address is %p, value is %c\n", i, &array[i], array[i]);

这将会打印出数组元素的字符表示,而不是整数值。
输出:

array[130] address is 000000000061FE82, value is é
array[131] address is 000000000061FE83, value is â
array[132] address is 000000000061FE84, value is ä
array[133] address is 000000000061FE85, value is à
array[134] address is 000000000061FE86, value is å
array[135] address is 000000000061FE87, value is ç
array[136] address is 000000000061FE88, value is ê
array[137] address is 000000000061FE89, value is ë
array[138] address is 000000000061FE8A, value is è
array[139] address is 000000000061FE8B, value is ï
array[140] address is 000000000061FE8C, value is î
array[141] address is 000000000061FE8D, value is ì
array[142] address is 000000000061FE8E, value is Ä
array[143] address is 000000000061FE8F, value is Å
array[144] address is 000000000061FE90, value is É
array[145] address is 000000000061FE91, value is æ

%d和%c的区别

在这里插入图片描述

%p

在C语言中,%p是一种格式化输出的转换说明符,用于打印指针变量的值。例如,下面的代码使用%p打印一个指向整数的指针变量p的值:

int num = 42;
int *p = &num;
printf("The value of p is %p\n", p);

输出为:

The value of p is 0x7ffee1d7e9ac

%p打印出的是指针变量p的十六进制地址。

%x %X

在C语言中,我们可以使用转换说明符 %x%X 来打印十六进制数。

%x 会将小写字母用于小于等于10的数字以及大写字母用于大于10的数字,而 %X 则全部使用大写字母。

下面是一个示例代码:

int num = 255;
printf("num in hex is %x\n", num);  // 输出 "num in hex is ff"
printf("num in HEX is %X\n", num);  // 输出 "num in HEX is FF"

%x%X 都只能用于输出 unsigned int 或者 unsigned long 类型的数据,如果使用 %x%X 输出其他类型的数据,将会导致未定义的行为。

输出浮点数

在C语言中,可以使用%f%e%g%E%G作为格式化输出符号来输出浮点数。

  • %f:按固定点表示法打印浮点数。
  • %e%E:按科学计数法打印浮点数。%e使用小写字母(例如,3.14159e+00),%E使用大写字母(例如,3.14159E+00)。
  • %g%G:根据值的大小,printf函数决定使用固定点表示法或科学计数法。%g使用小写字母,%G使用大写字母。

例如:

float num = 3.14159;
printf("The value of num is %f\n", num);
printf("The value of num is %e\n", num);
printf("The value of num is %g\n", num);

这将分别以固定点表示法,科学计数法和自动选择的方式打印出浮点数。

参考

《C Primer Plus》

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/191251.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

通义千问 模型学习 和 SDK试用

通义千问-14B-Chat-Int4 模型库 (modelscope.cn) **通义千问-14B&#xff08;Qwen-14B&#xff09;**是阿里云研发的通义千问大模型系列的140亿参数规模的模型。Qwen-14B是基于Transformer的大语言模型, 在超大规模的预训练数据上进行训练得到。预训练数据类型多样&#xff0…

灯光开不了了,是不是NVIDIA的问题

如果你跟我一样灯光亮度调节不了了&#xff0c;然后显示适配器又没有了&#xff0c;你看一下是不是和我这个大怨种一样把NVIDIA卸了&#xff0c;为了这个东西&#xff0c;这屏幕亮瞎我的眼镜&#x1f622;&#x1f622;。只需要进入官网&#xff0c;你就可以直接找到&#xff0…

【el-form】表单label添加?及tooltip

<el-form-item><span slot"label"><el-tooltip :content"tooltip提示框内容" placement"top"><i class"el-icon-question"></i></el-tooltip>{{ $t(menu.status) }}</span><el-radio-gr…

某公司前端笔试题(12.30)

1、对象数组去重&#xff1a; 数组去重&#xff1a; const a[{a:1,b:2},{a:2},{a:2},{a:1,c:3},{b:2,a:1}] 结果&#xff1a;[{a:1,b:2},{a:2},{a:1,c:3}] // 判断两个对象的属性值是否一致 const a [{ a: 1, b: 2 }, { a: 2 }, { a: 2 }, { a: 1, c: 3 }, { b: 2, a: 1 }] co…

报错:执行sudo gedit时 No protocol specifiedUnable to init server: 无法连接: 拒绝连接

1.问题描述 在执行sudo gedit编辑文件时&#xff0c;报错连接不上服务&#xff1a; 2.问题解决 2.1先安装Vncserver sudo apt-get update sudo apt-get install tightvncserver2.2执行 vncserver 按提示输入密码&#xff0c;不宜过短 2.3若出现提示warning 则按提示执行&…

C#之扩展方法详解

前言&#xff1a; 我们想要向一个类型中添加方法&#xff0c;可以通过以下两种方式&#xff1a; 1.修改源代码。 2.在派生类中定义新的方法。 但是这两种方式都有缺点&#xff0c;1如果是别人的代码&#xff0c;你对其直接进行修改&#xff0c;可能破坏代码的完整性&#x…

Windows11系统下MemoryCompression导致内存占用率过高

. # &#x1f4d1;前言 本文主要是win11系统下CPU占用率过高如何下降的文章&#xff0c;如果有什么需要改进的地方还请大佬指出⛺️ &#x1f3ac;作者简介&#xff1a;大家好&#xff0c;我是青衿&#x1f947; ☁️博客首页&#xff1a;CSDN主页放风讲故事 &#x1f304;每日…

【STM32】TIM定时器

第一部分&#xff1a;定时器基本定时的功能&#xff1b; 第二部分&#xff1a;定时器的输出比较功能&#xff1b; 第三部分&#xff1a;定时器输入捕获的功能&#xff1b; 第四部分&#xff1a;定时器的编码接口。 1 TIM简介 TIM&#xff08;Timer&#xff09;定时器&#…

STM32GPIO速度配置究竟改变了什么-笔记

STM32GPIO速度配置究竟改变了什么-笔记 摘要STM32引脚内部框图STM32时钟树端口寄存器I/O交流特性定义 摘要 一般有 Low、Medium、High&#xff0c;三种速度选择。速度配置变了硬件什么状态&#xff1f; 对 GPIO 的输入输出信号有什么影响&#xff1f; 编程时如何选取速度参数&…

【网络】传输层 -- 详解IP协议及IP协议的分片原理

目录 一、IP协议基本概念二、IP协议头格式1、报头和有效载荷如何分离2、有效载荷是如何向上交付&#xff08;分用&#xff09;的3、具体IP报头 三、网段划分1、什么是网段划分2、如何进行子网划分&#xff1f;再次理解子网划分及如何划分 3、私有IP地址和公网IP地址4、路由 四、…

虚拟机备份数据自动化验证原理

备份数据成功备份下来了&#xff0c;但是备份数据是否可用可靠&#xff1f;对于这个问题&#xff0c;最好最可靠的方法是将备份数据实际恢复出来验证。 但是这样的方法&#xff0c;不仅费时费力&#xff0c;而且需要随着备份数据的定期产生&#xff0c;还应当定期做备份数据验…

opencv知识库:利用cv2.resize()函数进行图像缩放

引言 在numpy知识库&#xff1a;深入理解numpy.resize函数和数组的resize方法中&#xff0c;小编较为详细地探讨了numpy的resize函数背后的机理。从结果来看&#xff0c;numpy.resize函数并不适合对图像进行缩放操作。而opencv中的resize函数虽然和numpy的resize函数同名&…

Java面试题(每天10题)-------连载(41)

目录 Spring篇 1、什么是Spring框架&#xff1f;Spring框架主要有哪些模块&#xff1f; 2、使用Spring框架能带来哪些好处&#xff1f; 3、什么是控制反转&#xff08;IOC&#xff09;&#xff1f;什么是依赖注入&#xff1f; 4、解释下Spring中的IoC? 5、BeanFactory和…

Fiddler抓包工具之fiddler设置弱网测试

弱网测试 概念&#xff1a;弱网看字面意思就是网络比较弱&#xff0c;我们通称为信号差&#xff0c;网速慢。 意义&#xff1a;模拟在地铁、隧道、电梯和车库等场景下使用APP &#xff0c;网络会出现延时、中断和超时等情况。 Fiddler弱网测试流程&#xff1a; 一、限速操作…

基于STC12C5A60S2系列1T 8051单片机的液晶显示器LCD1602移屏显示应用

基于STC12C5A60S2系列1T 8051单片机的液晶显示器LCD1602移屏显示应用 STC12C5A60S2系列1T 8051单片机管脚图STC12C5A60S2系列1T 8051单片机I/O口各种不同工作模式及配置STC12C5A60S2系列1T 8051单片机I/O口各种不同工作模式介绍液晶显示器LCD1602简单介绍IIC通信简单介绍掉电保…

使用Python免费调用通义千问大模型

Qwen-72b开源模型 模型的主要用途是预测或描述一个系统或现象的行为模式。它可以帮助人们更好地理解这个系统或现象&#xff0c;例如预测股市变化、天气预报、地震预警、交通流量等。模型也常用于设计和优化产品和工艺。在科学研究中&#xff0c;模型也是一种方法&#xff0c;用…

仿京东淘宝商品列表筛选组件:实现一个高效的侧边栏弹框筛选功能

仿京东淘宝商品列表筛选组件&#xff1a;实现一个高效的侧边栏弹框筛选功能 一、引言 随着电子商务的快速发展&#xff0c;用户体验成为了竞争的关键因素。在众多的电商网站中&#xff0c;如京东和淘宝&#xff0c;商品列表筛选功能为用户提供了便捷的途径来找到心仪的商品。本…

使用JSP+Servlet+MySQL实现登录注册功能

✅作者简介&#xff1a;大家好&#xff0c;我是Leo&#xff0c;热爱Java后端开发者&#xff0c;一个想要与大家共同进步的男人&#x1f609;&#x1f609; &#x1f34e;个人主页&#xff1a;Leo的博客 &#x1f49e;当前专栏&#xff1a; Java从入门到精通 ✨特色专栏&#xf…

【电路笔记】-并联电阻

并联电阻 文章目录 并联电阻1、概述2、并联电阻示例13、并联电阻示例24、并联电阻电路中的电流5、并联电阻器示例36、总结 当电阻器的两个端子分别连接到另一个或多个电阻器的每个端子时&#xff0c;电阻器被称为并联连接在一起。 1、概述 与之前的串联电阻电路不同&#xff0…

神经网络 模型表示2

神经网络 模型表示2 使用向量化的方法会使得计算更为简便。以上面的神经网络为例&#xff0c;试着计算第二层的值&#xff1a; 我们令 z ( 2 ) θ ( 1 ) x {{z}^{\left( 2 \right)}}{{\theta }^{\left( 1 \right)}}x z(2)θ(1)x&#xff0c;则 a ( 2 ) g ( z ( 2 ) ) {{a}…