【C语言】gets 和 puts 函数

发布时间 2024-01-12 12:45:14作者: hzyuan

gets 函数

scanf函数在读取字符串时遇到空格就认为读取结束,不利于读取一行字符串,gets函数就是为了解决这个问题的。

gets 函数的格式:

char *gets(char *str);

gets 函数从 STDIN 读取字符并把它们加载到str中,直到遇到 '\n'。gets 函数不会存储 '\n',而是将其翻译为空字符 '\0'。

如果成功,该函数返回 str。如果发生错误或者到达文件末尾时还未读取任何字符,则返回 NULL。

puts 函数

puts 函数的格式:

int puts(char *str);

puts 函数将 str 写入 STDOUT 中。
puts 函数只能用于输出字符串,同时多打印一个换行符。

puts(c); //等价于 printf("%s\n",c);

若字符串成功输出,则返回值为非负数,通常为0;若字符串输出失败,则返回值为 EOF,通常为-1。

举例

#include <stdio.h>

int main() {
    char c[20];
    gets(c);
    puts(c);
    return 0;
}