输入的区别
水根 资深达人 2015-11-18 21:06:30
2521 9 0

一直没怎么搞懂putchar(),puts(),getchar()和gets()的区别和用法。请指教,谢谢!

问题来自: 字符串

共 9 个回答

    最佳答案

    嘿嘿大人 一代宗师 3101天前

    putchar():输出字符(一次只能输出一个字符)

    puts():输出字符串,且结尾要换行(一次可以输出一串字符并且以'\0'结尾,这就是字符串)

    getchar():输入字符(一次只能输入一个字符)

    gets():输入字符串(一次可以输入一串字符,而且还要加上‘\0’结尾,也就是字符串)

    主要用于字符或者字符串的输出和输入;

    水根 资深达人 3101天前

    也就是说都能用于字符串了,只是功能不一样而已?

    嘿嘿大人 一代宗师 3101天前

    回复 水根:没看清楚么?字符和字符串是不一样的,不能混淆了,字符是单引号如‘a’,字符串是双引号“a”,看着很像,但是所占空间是不一样的,字符只占了一个字节,而字符串至少都要占两个字节,分清楚

    putchar()和getchar()是用来实现字符的输出和输入

    puts()和gets()是用来实现字符串的输出和输入

    水根 资深达人 3101天前

    回复 嘿嘿大人:哦,是这样,明白了,谢谢,我就是这个字符、字符数组和字符串搞得不是很清楚,但是现在有点轮廓了。

    嘿嘿大人 一代宗师 3101天前

    回复 水根:你可以这么理解,字符串是多个字符通过数组这种方式组合在一起的有序的且以‘\0’为结尾的字符的组合

    水根 资深达人 3101天前

    那字符数组呢?

    嘿嘿大人 一代宗师 3101天前

    回复 水根:字符数组就是字符组成的啊,不在末尾加‘\0’就是一堆有序的字符而已,和数组一样的,就是把数字换成了字符而已

    水根 资深达人 3100天前

    再请教一个笨问题:scanf("%s",&s)等价于gets(s)以及printf("%s",s)等价于puts(s)吗?我就是混乱了,搞不懂这其中的区别,谢谢!

    水根 资深达人 3093天前

    再请教一个问题:字符和字符串到底哪个需要手动在末尾加上'\0'?

您还没有登录,所以不能回复该问题
我要回复

  • 0

    点赞

  • 扫一扫分享朋友圈

    二维码

  • 分享

相关问题