當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


C++ gets()用法及代碼示例


C++ 中的gets() 函數從標準輸入讀取字符並存儲它們,直到找到換行符或出現文件結尾。

gets()原型

char* gets(char* str);

gets() 函數從標準輸入讀取字符並將它們存儲在str 中,直到找到換行符或文件結尾。

gets()fgets() 的區別在於gets() 使用stdin 流。如果提供了大輸入字符串,gets() 函數不支持防止緩衝區溢出。

它在<cstdio> 頭文件中定義。

注意:避免使用gets()函數,因為它可能對程序很危險。此函數在 C++11 中已棄用並從 C++14 中刪除。

參數:

str:指向存儲來自標準輸入的字符的字符數組的指針。

返回:

  • 成功時,gets() 函數返回 str
  • 失敗時返回NULL.
    • 如果失敗是由於文件結束條件導致的,它會將 eof 指示器設置為 stdin
    • 如果失敗是由其他錯誤引起的,它會在 stdin 上設置錯誤指示器。

示例:gets() 函數的工作原理

#include <iostream>
#include <cstdio>

using namespace std;

int main()
{
    char str[100];
    cout << "Enter a string: ";
    gets(str);
    cout << "You entered: " << str;
    
    return 0;
}

運行程序時,可能的輸出將是:

Enter a string: Have a great day!
You entered: Have a great day!

相關用法


注:本文由純淨天空篩選整理自 C++ gets()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。