字符串的输入和输出

       这一篇博客我们一起来学习字符串的输入和输出.

       在定义一个字符数组时, 一定要保证数组的长度比实际字符个数多一个字符, 这是因为C语言规定字符串都是以空字符结尾的, 即必须留出一个单元来存放字符串结束标志, 否则可能会导致程序出现不可预期的结果. 定义一个长度为STR_LEN的字符数组, 并不意味着这个数组总是包含一个长度为STR_LEN-1的字符串, 实际上字符串的长度取决于空字符的位置, 而不是字符数组的长度. 我们要将字符串中的内容逐个输出时, 可以像下面的程序这样处理: 每次循环都输出一个字符, 直到当前字符为空字符为止. 值得注意的是, 我们并不用 i < STR_LEN这个条件作为循环继续的条件, 这是由于长度为STR_LEN的字符数组并不一定包含一个长度为STR_LEN-1的字符串. 显然, 用计数变量 i的值与STR_LEN作比较显然是不明智的. 

       除了逐个字符输入、输出字符串外, 我们还可以用下图中的方式整体输入、输出字符串.

       另外还可以用gets()、puts()的组合实现字符串的整体输入、输出: 其中gets()负责从键盘读取一个字符串, puts()负责输出这个字符串. 值得一提的是, puts()在输出完一个字符串后, 会再输出一个换行符.


版权声明:本文为weixin_42048463原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。