在编程语言中我们常会使用到put函数,如putc,putchar,puts等等,很多小伙伴会将他们弄混淆,接下来我会详细介绍五个put相关函数之间的区别。
一、putchar()
1.功能:输出一个字符到标准输出设备(如屏幕)。
2.原型:int putchar(int c);
3.参数:c 是一个整数,表示要输出的字符。
4.返回值:返回传入的字符(作为unsigned char 转换后的值)。
示例:
使用场景:当仅需要输出单个字符时使用。
小提示:putchar 的参数类型是 int,但实际上它接受的是 unsigned char 类型的值。这意味着输入大于 255 的值会按模运算后输出。
二、putc
1.功能:类似于 putchar,但可以指定输出到哪个文件流。
2.原型:int putc(int c, FILE *stream);
3.参数:c 是要输出的字符,stream是目标输出流,通常是一个通过stdin, stdout, stderr或fopen等函数打开的文件指针。
4.返回值:成功则返回传入的字符(作为unsigned char 转换后的值),失败则返回EOF。
示例:
使用场景:当你想向特定的文件流输出字符时。
小提示:与 putchar 类似,但提供了更多的灵活性,可以指定输出目标。
三、puts()
1.功能:输出一个字符串到标准输出设备,并在字符串末尾自动添加换行符。
2.原型:int puts(const char *s);
3.参数:s 是指向要输出的字符串的指针。
4.返回值:成功时返回字符串的长度(包括空字符),失败时返回 EOF。
示例
使用场景:用于输出整个字符串,常用于打印带有换行的信息等。
小提示:自动添加换行符,所以如果原本字符串中已经包含换行,结果会有两个换行。
四、fputc()
功能:向指定的文件流写入一个字符。
原型:int fputc(int c, FILE *stream);
参数:与 putc 相同。
返回值:与 putc 相同。
示例
使用场景:与 putc 几乎相同,但更强调文件操作。
小提示:与 putc 完全相同,只是名字不同以强调其文件流操作能力
五、fputs()
1.功能:向指定的文件流写入一个字符串,并不自动添加换行符。
2.原型:int fputs(const char *s, FILE *stream)。
3.参数:s 是要输出的字符串,stream 是指向文件流的指针。
4.返回值:成功时返回非负值,失败时返回非0值,这个值通常会被设为EOF。
示例
使用场景:用于向文件流输出字符串,不自动添加换行符。
小提示:与 puts 不同,不会自动添加换行符,因此更适合需要控制格式的输出。
这些函数都在 <stdio.h> 标准库中定义,是C语言进行基本输入输出操作的重要工具。使用时,根据具体需求选择适合的函数,注意参数类型和返回值的处理。
点个关注,防止迷路,欢迎大家共同学习交流!