C语言学习记录第六天(字符的部分函数)

日记都第六篇了,现在已经是上啥写啥了,讲课进度慢,见谅。(真的不是我想水)

在日记第五天,我们讲过了,gets是输入字符串,与scanf的不同之处在于,gets遇到空格并不会停止,而是遇到回车键(即'\n')时才会退出。puts是输出字符串,getchar是输入单个字符,可以是数字,字母,也可以是空格,回车(但是scanf与getchar都有个小问题,都会把输入一个字符后的回车键也给放在缓冲区录进去,这一点只需要在scanf或getchar后再加上一个getchar吸收掉那个回车即可)。让我们看看对比。

左侧为不加getchar,可以看到第二个输入的a是在第三行,相较于输出之后是换行了。而右边则是加入getchar吸收缓冲区的回车键之后的效果,并没有换行。因此,我们可以这样理解。当我们输入一个字符后,按下回车键,界面本身就会换行,然后将输入的字符与回车键放入缓冲区,然后将输入的字符与回车键依次赋值。如图,先将输入一个数,按下回车,此时缓冲区两个字符,第一个字符赋给a,然后缓冲区剩下回车键。左侧不清理,第二次执行时,将回车键赋值给a,输出,直接换行,然后才能再次输入。而右侧在第一次执行时直接用getchar吸收掉回车,因此不会换行。(但是字符串不会发生这种事,字符串会自动忽略掉前方与后方回的车键,并不会吸收回车键,也就是说输入字符串然后回车,缓冲区还是会留下回车键,如果后面输入的是字符串则无伤大雅,但如果是单个字符则需要利用getchar吸收掉回车键。关于缓冲区由于我还没学,以后会专门讲(今夕是何年))

然后strcat函数是将两个字符串进行连接,改变左侧字符串的值,右侧不变。(如图)

现在开始介绍新内容,第一个函数,strcpy函数,大家可以这么理解,strcopy,字符串拷贝(不要记错,相比于copy省略了个o)。与strcat相同,左侧字符变化右侧不变。

第二个函数,strcmp函数。同样也是简写,strcompare,字符串比较,与上面相同,省略掉了o取3位。这个函数是对两个字符串进行比较,不过是ASCII码的比较。字符串比较是从左到右进行,两个字符串从左到右比,当前位置ASCII码值相同则进行后一位比较,如果不同,当前位置哪个ASCII码值大就是哪个字符串大,然后strcmp函数是左边和右边比,左大于右则为1,小于则为-1,相等为0。

第三个函数,strlen函数(strlength,字符串长度),计算字符串长度用的,就是字符串中有几个字符就输出多少,看案例。

最后一类函数,没错,一类,两个函数,分别是将大写字母小写以及将小写字母大写。strlwr与strupr。这么看可能有点难,那就完整版,strlower与strupper,字符串变小与变大。看案例。

我这在前面加上‘_’是编译器的问题,不要在意。

OK,今天的日记到此结束,下次见,拜拜(长期更新,球球留个免费的赞,蟹蟹!)

  • 7
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值