温馨提示×

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

小亿
194
2023-12-26 13:17:48
栏目: 编程语言

在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函数,以增加程序的安全性。

0