C语言 关于输入输出与结束符“\0”

简介: C语言 关于输入输出与结束符“\0”

1.结束符\0

结束符\0 ASCII码为0,即为空字符NULL,占用一个字符位。

所有的字符串操作函数,都会遇0而止

仅有字符数组即char型数组

字符数组的长度要比实际存储字符串的长度至少多1

(int型等其他数组的末尾不需要加\0)

2.输入函数

  1. 使用 scanf函数的%s格式 / gets()函数 输入字符串 ,识别空格/换行符作为输入结束,不需要在输入的字符串末尾加入'\0'
  2. scanf函数的%c格式用来输入单个字符,能够识别空格跟换行符并将其输入,并不同于其他输入方式(其他函数或其他格式)通过空格或换行来识别输入的结束,不需要在输入的字符串末尾加入'\0'为只识别单个字符)
  3. 使用getchar()输入字符串则需要在字符串末尾加入“\0”,否则printfputs函数会因无法识别字符串末尾而输出一大堆乱码。

注意:

由于gets识别换行符\n作为输入结束,因此若scanf完一个整数后,如需使用gets函数,
需要先用getchar接收整数后的换行符,或应在scanf末尾加入\n

3.输出函数

puts函数和printf在输出字符串的时候遇到'\0'和'\n'分别是怎么处理的

  • 如果有多个\0的话,这两个函数均是输出到第一个\0就终止了,
    ‘\0’作为一个字符串结束的标志
  • 连续多个\n就是多次换行
    输出字符串上的功能而言,这两个函数的作用,效果完全一致

printf和puts的区别

c语言中,puts和printf函数有啥区别?

puts和printf函数的区别如下:

  1. 不同的换行符
    puts()函数会自动在字符串末尾添加一个换行符,这意味着它会自动换行,而printf()函数没有此功能
  2. 输出内容不同
    puts()函数只能输出字符串,不能对输出和转换指令进行标准化,而printf()函数可以

printf和puts的调用格式

1.printf

格式字符串包含三种类型的对象:

(1)字符串常量

(2)格式控制字符串

(3)转义字符

  • 字符串常量按原样输出并在显示中用作提示。输出项在输出表列中给出,格式控制字符串和每个输出项在数量和类型上应一一对应。
  • 格式控制字符串是以%开头的字符串,后跟各种格式控制字符,以指示输出数据的类型、宽度、精度等。

2.puts

(1)puts()函数只能输出字符串,不能输出值或执行格式转换。

(2)字符串可以直接写入puts()函数。例如:如:puts("Hello,world!")。

(3)puts与printf相同,puts()函数的作用与printf语句相同。注意:puts将在输出字符串之后自动输出回车

4.参考资料

参考资料来源:https://baike.baidu.com/item/puts%20%28%29?fromModule=lemma_search-box

参考资料来源:https://baike.baidu.com/item/printf/7467706?fromModule=lemma_search-box

 

相关文章
|
6月前
|
C语言
C语言对文件的输入输出
C语言对文件的输入输出
34 0
|
6月前
|
C语言 C++ 数据格式
【C++对于C语言的扩充】C++与C语言的联系,命名空间、C++中的输入输出以及缺省参数
【C++对于C语言的扩充】C++与C语言的联系,命名空间、C++中的输入输出以及缺省参数
|
5月前
|
测试技术 C语言
数据结构学习记录——树习题—Tree Traversals Again(题目描述、输入输出示例、解题思路、解题方法C语言、解析)
数据结构学习记录——树习题—Tree Traversals Again(题目描述、输入输出示例、解题思路、解题方法C语言、解析)
45 1
|
5月前
|
C语言
C语言标准的输入输出
C语言标准的输入输出
41 0
|
6月前
|
存储 C语言
C语言中的数据输入输出
C语言中的数据输入输出
68 0
|
6月前
|
存储 C语言
C语言中的字符串访问与输入输出技术详解
C语言中的字符串访问与输入输出技术详解
80 0
|
缓存 C语言
C语言——数据的输入输出
C语言——数据的输入输出
|
C语言 容器
【C语言—零基础第六课】输入输出语句格式与复合语句
在生活中我们把水倒进杯子里边就是赋值,杯子是一个容器用来存放东西的。在C语言中变量相当于一个容器用来存放值的,变量类型的不同存放的东西也不同。例如:杯子是装水的、相框是放照片的、手枪的弹夹是用来装子弹的,不同事物用着不同的容器来装。 C语言中用=来表示赋值。两个等于号==在C语言中表示判断。
135 0
|
C语言
C语言刷题系列——2.输入输出练习
C语言刷题系列——2.输入输出练习
186 0
|
存储 C语言
C语言——字符串&&格式化输入输出(学习分享)
C语言——字符串&&格式化输入输出(学习分享)
124 0