欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 文旅 > 美景 > C ASCII字符表示

C ASCII字符表示

2025/2/22 2:23:34 来源:https://blog.csdn.net/qq_45973003/article/details/145734493  浏览:    关键词:C ASCII字符表示

1-1 ASCII字符表示


 sprintf(buf, "A5%c%02d", SOFTWARE_VERSRION_1 + 'A' - 1, (U16)SOFTWARE_VERSRION_4);

在程序中通常会出现这样的写法,A对应的ASCII字符表示的含义是65,一直往后到95获得的支付是B是66,然后Z对应的是90,这种写法表示的任务和含义是。


1-2 补充知识点


sprintf中的格式化字符串:将字符转换为对应的格式,输出到一个buf中进行存储,以下简单的解释一下这个字符的作用与含义。

sprintf(buf, "%2d %02d", st, lb);

相关的图解如下所示:

sprintf 函数中使用的格式化字符串 "%02d" 中,% 后面的 02 分别有特定的含义:如上图所示。

在 sprintf 函数中使用的格式化字符串 "%02d" 中,% 后面的 0 和 2 分别有特定的含义:

0:这个字符表示如果转换后的数字长度小于指定宽度(这里是2),则用前导零而不是空格来填充。换句话说,它告诉函数使用0而不是默认的空格来填充数字前面的空间。

2:这指定了最小字段宽度,即转换后的数字至少应占用的字符数。如果数字的实际位数少于这个宽度,则根据前面的标志(如0)进行填充。

"%02d" 的意思是指定输出的整数至少为两位数宽,如果实际数值只有一位,则在其前添加一个0作为填充,使得输出总是至少有两个字符长。

如果 st 的值是 5,那么 "%02d" 会将它格式化为 "05"。
 

如果 st 的值是 34,因为已经是两位数,所以直接格式化为 "34" 而无需添加前导零。

这种格式化方式特别适用于需要固定宽度输出的情况,比如时间显示(小时和分钟)、日期显示月份和天数,等场合,确保了输出的一致性和对齐性。

sprintf(buf, "%2d %02d", st, lb);

%2d 表示对于变量 st,至少分配两个字符宽度,如果不足两位,默认使用空格填充。

%02d 对于变量 lb,同样要求至少两个字符宽度,但使用0填充任何不足两位的部分。 


 sprintf(buf, "A5%c%02d", SOFTWARE_VERSRION_1 + 'A' - 1, (U16)SOFTWARE_VERSRION_4);

......这个含义与上面的具体上是类似的,然后A5表示的是一个固定的格式可能是相关数据帧


版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词