溫馨提示×

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

小億
265
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
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女