C语言中put()与puts()的区别?

如题所述

putchar()和puts()吧?
putchar()是输出一个字符的意思,经常用来输出一些特殊字符。
比如你要输出一个空格:putchar('\n');
比如你要输出一条线:for(i=0;i<30;i++) putchar('-');
和printf有作用相同的地方。相对的getchar()获得一个字符。

puts();和gets();
前者是输出,后者是(从键盘)获得。
但是而这都是对于字符数组或者指向字符数组的指针进行操作的。
比如你在char str[20];里面输入了一个字符串(可以用gets(str)函数实现)。然后通过puts(str);语句就可以进行输出了。这里要注意,这两个函数的括号里面的参数是字符串数组的首地址也就是字符数组的名字或者是已经被赋值指向字符数组的指针的名字。
这两个与scanf("%s",str);以及for和%c的组合相比,优点是书写简便,可以接受空格(比如你输入how are you?的时候,有空格就是能用gets()进行输入了)。scanf是看到空格和回车都认为是结束,而gets可以接受空格,只把回车当做结束。字符串输入输出的时候这两个函数用的频率还是蛮高的。

再就是后面文件方面的输入输出,fgetc()/fputc()/fgets()/fputs(),有兴趣可以看一下。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-07-24
putchar()和puts()吧?我记得应该没有put().
putchar()是输出一个字符,比如输出一个空格:putchar('\n'); 类似printf的%c格式 puts()是输出一个字符串,比如puts("hello,world\r\n"), 类似printf的%s。