c primer plus_chapter_four——字符串和格式化输入/输出

1、strlen();const;字符串;用c预处理指令#define和ANSIC的const修饰符创建符号常量;
2、c语言没有专门储存字符串的变量类型,字符串被储存在char类型的数组中;\0标记字符串的结束;
char name[40];//40表示元素数量,char表示访问类型;只能存39字符,最后一个存结束符;
字符串有结束符,而字符没有;
sizeof计算结束符\0;而strlen不会;
c99和c11为sizeof提供了%zd的转换说明,对于strlen同样适用,他们通常的返回类型为unsigned 或者unsigned long;
3、#define PRAISE "asdasdasd";
用define定义的字符串常量可以访问PRAISE查看,例如:printf("%S",PRAISE);
常量和c预处理器:
#define a 1 //程序中所有的a都被替换成1;末尾不加分号;用大写来命名常量;
还可以用于定义字符(单引号)和字符常量(双引号),
#define BEEP '\a'
#define OPOP " asdsda "
const(限定符) 表示只读:const int a = 2;
4、头文件limits.h和float.h提供与整数类型和浮点类型大小限制相关的信息:
limits.h包含: #define INT_MAX +32767 #define INT_MIN -32768
float.h 包含:#define FLT_DTG ;//该类型的最小有效数字数(十进制);
5、printf()
转换说明 输出
%a 浮点数、十六进制和p计数法(p以前的数用十六进制来求
=(5+11/16+6/256)*2^12(p以后的数是几就是二的几次方比如:2的12次方))
%A 浮点数、十六进制和p计数法
%c 单个字符
%d 有符号十进制整数
%e 指数(e)计数法,浮点数
%E 浮点数、e计数法
%f 浮点数、十进制计数法
%g 根据值不同,自动选择%f、%e、%e格式用于指数小于-4或者大于或等于精度时
%G 根据值不同,自动选择%f、%E、%E格式用于指数小于-4或者大于或等于精度时
%i 有符号十进制整数
%o 无符号八进制整数
%p 指针
%s 字符串
%u 无符号十进制整数
%x %#x(按格式输出)无符号十六进制整数0f
%X 无符号十六进制整数0F
%% 打印一个%
printf()的转换说明修饰符
修饰符 含义
标记 + - 空格 # 0 5种标记,%-10d
数字 最小字段宽度使用更宽的字段%4d
. 数字 精度 %5.2f 字段宽度为5,小数点后有两位数字
h shor int | unsigned int ”%hu“,"%6.4hd"
hh signed char | unsigned char "%hhu"
j intmax_t | uintmax_t "%jd" "%8jx"
l long int | unsigned long int "%ld"
ll long long int | unsigned long long int "%lld"
L long double "%Lf"
t ptrdiff_t(两个指针差值类型) "%td"
z size_t (sizeof的返回值类型) "%zd"
printf() 中的float会被自动转换为double类型;
printf()的标记
标记 含义
- 从左侧打印该项"%-20s"
+ 有符号值若为正则显示加号,负显示减号”%+6.2f“
空格 有符号值正则不显示,负则显示负号 ” 6.2f“
# 格式化输出,%o则0开始 %x则0x开始 ”%#o“
0 数值格式:用0代替空格填充字段宽度,整数格式:有- 或指定 精度,则忽略该标记,”%010d" ,,"%0.83f"
相关文章:
c primer plus_chapter_four——字符串和格式化输入/输出
1、strlen();const;字符串;用c预处理指令#define和ANSIC的const修饰符创建符号常量; 2、c语言没有专门储存字符串的变量类型,字符串被储存在char类型的数组中;\0标记字符串的结束&a…...
Python Fastapi+Vue+JWT实现注册、登录、状态续签【登录保持】
文章目录 一、实现流程1.注册2.登录3.登录保持【状态续签】二、实现方法1.注册2.登录+登陆状态保持* 后端部分* 前端部分一、实现流程 1.注册 Created with Raphal 2.3.0...
oracle-sql语句解析类型
语句执行过程:1. 解析(将sql解析成执行计划) 2.执行 3.获取数据(fetch) 1. shared pool的组成。 share pool是一块内存池。 主要分成3块空间。free, library(库缓存,缓存sql以及执行计划),row cache(字典缓存) select * from v…...
2023 年最新企业微信官方会话机器人开发详细教程(更新中)
目标是开发一个简易机器人,能接收消息并作出回复。 获取企业 ID 企业信息页面链接地址:https://work.weixin.qq.com/wework_admin/frame#profile 自建企业微信机器人 配置机器人应用详情 功能配置 接收消息服务器配置 配置消息服务器配置 配置环境变量…...
3、FFmpeg基础
1、FFmpeg 介绍 FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用LGPL或GPL许可证。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的音频/视频编解码库。 2、FFmpeg 组成 - libavformat:用于各种音视频[封装…...
c语言:用指针解决有关字符串等问题
题目1:将一个字符串str的内容颠倒过来,并输出。 数据范围:1≤len(str)≤10000 代码和思路: #include <stdio.h> #include<string.h> int main() {char str1[10000];gets(str1);//读取字符串内容char* p&str1[…...
吃透 Spring 系列—Web部分
目录 ◆ Spring整合web环境 - Javaweb三大组件及环境特点 - Spring整合web环境的思路及实现 - Spring的web开发组件spring-web ◆ web层MVC框架思想与设计思路 ◆ Spring整合web环境 - Javaweb三大组件及环境特点 在Java语言范畴内,web层框架都是基于J…...
JAVA后端服务端与移动端客户端高精度时间同步思路
一、脑补 在Chrome--->Network----> Timing中可以查看一个请求在各个阶段所花费的时间。 Timing中各个字段的意思发: 1、Queueing:从增加到等待处理队列到实际开始处理的时间间隔——浏览器也有线程机制,所有的请求不能同时发送&…...
nsd的资料
nsd是一款开源的DNS服务器应用。 近期参与项目过程中,涉及到DNS业务,结果被打的满头包。 虽然在校学习时就知道DNS协议,但从业这么多年,对于DNS协议的理解其实一直处于一知半解的状态。 当前处理问题时,接触到了nsd&am…...
关于Maven中pom.xml文件不报错但无法导包解决方法
问题 我的pom文件没有报红,但是依赖无法正常导入。 右下角还总出现这种问题。 点开查看报错日志。大致如下 1) Error injecting constructor, java.lang.NoSuchMethodError: org.apache.maven.model.validation.DefaultModelValidator: method <init>()V no…...
使用决策树分类
任务描述 本关任务:使用决策树进行分类 相关知识 为了完成本关任务,你需要掌握:1.使用决策树进行分类 使用决策树进行分类 依靠训练数据构造了决策树之后,我们可以将它用于实际数据的分类。在执行数据分类时,需要…...
STM32H563烧录后无法擦除
STM32H563烧录后无法擦除,使用STM32CubeProgrammer连接后显示如下图所示。...
2023最新最全【Adobe After Effection 2023】下载安装零基础教程【附安装包】
AE2023下载点这里 教学 1.鼠标右击【Ae2023(64bit)】压缩包选择(win11系统需先点击“显示更多选项”)【解压到 Ae2023(64bit)】。 2.打开解压后的文件夹,鼠标右击【Set-up】选择【以管理员身份运行】。 3.点击【文件夹图标】,…...
【Spring之底层核心架构概念解析】
文章目录 一、BeanDefinition二、BeanDefinitionReader2.1、AnnotatedBeanDefinitionReader2.2、XmlBeanDefinitionReader 五、ClassPathBeanDefinitionScanner六、BeanFactory七、ApplicationContext7.1、AnnotationConfigApplicationContext7.2、ClassPathXmlApplicationCont…...
手把手带你创建一个自己的GPTs
大家好,我是五竹。 最近GPT又进行了大升级,这一下又甩了国内AI几条街,具体更新了哪些内容之前的一篇文章中其实已经说过了:ChatGPT 王炸升级!更强版 GPT-4 上线! 其中最重要的一点就是支持自定义GPT&…...
Vue 组件+es6箭头函数+路由
一、组件 1、让网页或局部页实现复用,包括js(vue)功能 组件(Component)是 Vue.js 最强大的功能之一。组件可以扩展 HTML 元素,封装可重用的代码。在较高层面上,组件是自定义元素, …...
Clickhouse学习笔记(5)—— ClickHouse 副本
Data Replication | ClickHouse Docs 副本的目的主要是保障数据的高可用性,即使一台 ClickHouse 节点宕机,那么也可以从其他服务器获得相同的数据 注意: clickhouse副本机制的实现要基于zookeeperclickhouse的副本机制只适用于MergeTree f…...
ELMo模型、word2vec、独热编码(one-hot编码)的优缺点进行对比
下面是对ELMo模型、word2vec和独热编码(one-hot编码)的优缺点进行对比: 独热编码(One-hot Encoding): 优点: 简单,易于理解。适用于词汇表较小的场景。 缺点: 高维度…...
FFmpeg简介1
适逢FFmpeg6.1发布,准备深入学习下FFmpeg,将会写下系列学习记录。 在此列出主要学习资料,后续再不列,感谢这些大神的探路和分享,特别是雷神,致敬! 《FFmpeg从入门到精通》 《深入理解FFmpeg》 …...
基于FPGA的PID算法学习———实现PID比例控制算法
基于FPGA的PID算法学习 前言一、PID算法分析二、PID仿真分析1. PID代码2.PI代码3.P代码4.顶层5.测试文件6.仿真波形 总结 前言 学习内容:参考网站: PID算法控制 PID即:Proportional(比例)、Integral(积分&…...
简易版抽奖活动的设计技术方案
1.前言 本技术方案旨在设计一套完整且可靠的抽奖活动逻辑,确保抽奖活动能够公平、公正、公开地进行,同时满足高并发访问、数据安全存储与高效处理等需求,为用户提供流畅的抽奖体验,助力业务顺利开展。本方案将涵盖抽奖活动的整体架构设计、核心流程逻辑、关键功能实现以及…...
Linux简单的操作
ls ls 查看当前目录 ll 查看详细内容 ls -a 查看所有的内容 ls --help 查看方法文档 pwd pwd 查看当前路径 cd cd 转路径 cd .. 转上一级路径 cd 名 转换路径 …...
Springcloud:Eureka 高可用集群搭建实战(服务注册与发现的底层原理与避坑指南)
引言:为什么 Eureka 依然是存量系统的核心? 尽管 Nacos 等新注册中心崛起,但金融、电力等保守行业仍有大量系统运行在 Eureka 上。理解其高可用设计与自我保护机制,是保障分布式系统稳定的必修课。本文将手把手带你搭建生产级 Eur…...
css的定位(position)详解:相对定位 绝对定位 固定定位
在 CSS 中,元素的定位通过 position 属性控制,共有 5 种定位模式:static(静态定位)、relative(相对定位)、absolute(绝对定位)、fixed(固定定位)和…...
unix/linux,sudo,其发展历程详细时间线、由来、历史背景
sudo 的诞生和演化,本身就是一部 Unix/Linux 系统管理哲学变迁的微缩史。来,让我们拨开时间的迷雾,一同探寻 sudo 那波澜壮阔(也颇为实用主义)的发展历程。 历史背景:su的时代与困境 ( 20 世纪 70 年代 - 80 年代初) 在 sudo 出现之前,Unix 系统管理员和需要特权操作的…...
Spring AI 入门:Java 开发者的生成式 AI 实践之路
一、Spring AI 简介 在人工智能技术快速迭代的今天,Spring AI 作为 Spring 生态系统的新生力量,正在成为 Java 开发者拥抱生成式 AI 的最佳选择。该框架通过模块化设计实现了与主流 AI 服务(如 OpenAI、Anthropic)的无缝对接&…...
零基础设计模式——行为型模式 - 责任链模式
第四部分:行为型模式 - 责任链模式 (Chain of Responsibility Pattern) 欢迎来到行为型模式的学习!行为型模式关注对象之间的职责分配、算法封装和对象间的交互。我们将学习的第一个行为型模式是责任链模式。 核心思想:使多个对象都有机会处…...
【开发技术】.Net使用FFmpeg视频特定帧上绘制内容
目录 一、目的 二、解决方案 2.1 什么是FFmpeg 2.2 FFmpeg主要功能 2.3 使用Xabe.FFmpeg调用FFmpeg功能 2.4 使用 FFmpeg 的 drawbox 滤镜来绘制 ROI 三、总结 一、目的 当前市场上有很多目标检测智能识别的相关算法,当前调用一个医疗行业的AI识别算法后返回…...
Linux C语言网络编程详细入门教程:如何一步步实现TCP服务端与客户端通信
文章目录 Linux C语言网络编程详细入门教程:如何一步步实现TCP服务端与客户端通信前言一、网络通信基础概念二、服务端与客户端的完整流程图解三、每一步的详细讲解和代码示例1. 创建Socket(服务端和客户端都要)2. 绑定本地地址和端口&#x…...
