C语言中%c与%s的区别与划分「建议收藏」

C语言中%c与%s的区别与划分「建议收藏」%c格式对应的是单个字符,%s格式对应的是字符串。例:chara;charb[20];scanf("%c",&a);//只能输入一个字符。scanf("%s",b);//可以输入一串不超过20字符的字符串。%c对应类型为char,%s对应类型为char,即字符串.用作输入时,二者参数都要传char型.%c输入函数只会对一个字节空间赋值.而%s会一直赋值,直到输入中遇…

大家好,又见面了,我是你们的朋友全栈君。

字符和字符串

%c格式对应的是单个字符
%s格式对应的是字符串
例:

char a;
char b[20];
scanf("%c",&a); //只能输入一个字符。
scanf("%s",b); //不超过20字符的字符串,字符串下标为0~19。

char和char*

%c对应类型为char
%s对应类型为char * , 即字符串。

用作输入时, 二者参数都要传char * 型. 
%c输入函数只会对一个字节空间赋值. 而%s会一直赋值,直到输入中遇到空白字符为止.
用作输出时, %c传char类型,输出一个字符. %s传char*类型参数, 输出到\0为止.

输入的时候scanf("%c", &a);这里的&不能少
而scanf("%s",s);这里不能有&符号

转换说明符

%c             字符
%d             有符号十进制整数
%f             浮点数(包括float和doulbe)
%e(%E)     	   浮点数指数输出[e-(E-)记数法]
%g(%G)     	   浮点数不显无意义的零"0"
%i             有符号十进制整数(%d相同)
%u             无符号十进制整数
%o             八进制整数        		     0123
%x(%X)     	   十六进制整数0f(0F)          0x1234
%p             指针
%s             字符串

标志

  左对齐:"-"      "%-2s"代表左对齐2位
  右对齐:"+"      "%+2s"代表右对齐2位

格式

〔标志〕〔输出最少宽度〕〔.精度〕〔长度〕类型

“%-md” : 左对齐,若m比实际少时,按实际输出。
“%m.ns” : 输出m位,取字符串(左起)n位,左补空格,当n>m or m省略时m=n
“%m.nf” : 输出浮点数,m为宽度,n为小数点右边数位
“%3.1f” : 输入3852.99 输出3853.0

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/145997.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 安利一款免费、开源、实时的服务器监控工具:Netdata

    安利一款免费、开源、实时的服务器监控工具:NetdataNetdata是一个免费、开源、实时的服务器监控工具,可以可视化和监控实时数据,如CPU使用率、RAM使用率、负载、SWAP使用率、带宽使用率、磁盘使用率等。它可以帮助系统管理员了解您的系统或应用程序中正在发生的事情以及刚刚发生的事情。它可以安装在任何物理服务器、虚拟机、容器和物联网设备上。它提供了一个交互式Web界面来查看您的服务器指标,并支持用于持久存储的各种数据存储。在本教程中,我们将向您展示如何在AlmaLinux8上安装Netdata监控工具。先决条件运行Alm

    2022年5月9日
    41
  • 产品模块化设计_pom设计模式

    产品模块化设计_pom设计模式对于,ecmall的本身自带的模板,可能很多用过的朋友都知道,其实还有许多功能根本无法实现。从根本上来讲,不如Smarty强大,但本人也试过将smarty引入但不是很成功,究其原因,ecmall的模板,并不是单纯地模板,而是在解析时参入了许多其它业务的逻辑,所以,直接以smarty来代替ecmall本身的模板,在widget的开发时会有很大的问题。所以,为了灵活情,本人,在ecmall

    2025年8月11日
    4
  • nginx 400 报错,故障排查

    nginx 400 报错,故障排查nginx的400错误比较难查找原因,因为此错误并不是每次都会出现的,另外,出现错误的时候,通常在浏览器和日志里看不到任何有关提示。经长时间观察和大量试验查明,此乃requestheader过大所引起,request过大,通常是由于cookie中写入了较大的值所引起。解决办法这:在nginx.conf中,将client_header_buffer_size和large_cl…

    2022年5月1日
    72
  • 接口400是什么错误_接口报500是什么错误

    接口400是什么错误_接口报500是什么错误原文地址:https://blog.csdn.net/lw1242189467/article/details/80048407首先,遇到400问题,最大几率是出现了数据类型不一致的问题,简单来说是Controller层不用正确读取你发送请求附带的参数。该例是我前端传送JSON格式,使用postmen接收。一.发现400错误的,第一步确认postmen中发送的数据类型是json。比如Headers中Content-Type类型是application/json;或是前端代码Ajax中添加:conten

    2022年9月27日
    2
  • ViewPager 详解(二)—详解四大函数

    ViewPager 详解(二)—详解四大函数前言:上篇中我们讲解了如何快速实现了一个滑动页面,但问题在于,PageAdapter必须要重写的四个函数,它们都各有什么意义,在上节的函数内部为什么要这么实现,下面我们就结合android的API说明,详细讲解一下。相关文章:1、《ViewPager详解(一)—基本入门》2、《ViewPager详解(二)—详解四大函数》3、《ViewPager详解(三)-…

    2022年7月22日
    10
  • 久坐提醒 android wear,这五个理由告诉你为什么需要一块智能手表![通俗易懂]

    久坐提醒 android wear,这五个理由告诉你为什么需要一块智能手表![通俗易懂]来源:驱动号作者:2019-06-14/17:15访问量:摘要智能化可穿戴设备现如今已经普及,如果你还没有一块智能手表,现在是时候戴一下了。智能手表与智能手机相比,带来的都是潜在性的好处。虽然智能手表并不能保证你一定会多运动,也不能保证你一定会少玩手机。但是它可以提供一种让生活更好的选择,这种选择可能就足以改变我们的生活。过去的几年,关于智能手表的讨论都是”要不要买一款智能手表”,而…

    2022年9月28日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号