c语言中puts和gets的用法是什么

1018
2024/1/21 13:17:48
栏目: 编程语言
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在C语言中,puts和gets是标准库中的两个函数,用于输入和输出字符串。

  1. puts函数:
    • 函数原型:int puts(const char *str);
    • 函数功能:将一个以null字符结尾的字符串输出到标准输出流(屏幕),并自动在末尾添加一个换行符。
    • 参数:str是要输出的字符串。
    • 返回值:如果成功,返回非负值;如果失败,返回EOF。

示例代码:

#include <stdio.h>

int main() {
    char str[] = "Hello World!";
  
    puts(str); // 输出Hello World!
  
    return 0;
}
  1. gets函数:
    • 函数原型:char *gets(char *str);
    • 函数功能:从标准输入流(键盘)读取一行字符串(包括空格),并存储到str所指向的字符数组中,直到遇到换行符为止。
    • 参数:str是用于存储输入字符串的字符数组。
    • 返回值:成功时返回str,失败时返回NULL。

注意:gets函数存在安全性问题,容易导致缓冲区溢出,因此在实际应用中不推荐使用。推荐使用fgets函数代替。

示例代码:

#include <stdio.h>

#define SIZE 100

int main() {
    char str[SIZE];
  
    printf("Enter a string: ");
    gets(str); // 从键盘读取字符串,存储到str中
  
    printf("You entered: %s\n", str);
  
    return 0;
}

建议使用fgets函数代替gets函数,以增加程序的安全性。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: C语言多线程pthread库的相关函数有哪些