两个吃奶一个添下面视频_人妻第一页香蕉网_欧美xxxx少妇_妺妺窝人体色www婷婷

在提交問題時,不少接收字符串的時候可以用gets函數(shù)(以前確實(shí)可以),但由于get函數(shù)不提供給出足夠長的輸入字符串時,避免目標(biāo)數(shù)組緩沖區(qū)溢出的手段。 std::gets 于 C++11 被棄用,并于 C++14 移除。

可使用 std::fgets 替代。也就是說現(xiàn)在只要用C++11及以后版本的標(biāo)準(zhǔn),gets函數(shù)都不能再用了


不過,我們可以使用#define gets(S) fgets(S,sizeof(S),stdin) 作為兼容性宏替換。


附:

fgets函數(shù)原型:

char *fgets(char *str, int n, FILE *stream);


參數(shù)含義:

str這是指向一個字符數(shù)組的指針,該數(shù)組存儲了要讀取的字符串。

n這是要讀取的最大字符數(shù)(包括最后的空字符)。通常是使用以 str 傳遞的數(shù)組長度。

stream這是指向 FILE 對象的指針,該 FILE 對象標(biāo)識了要從中讀取字符的流。


返回值:

如果成功,該函數(shù)返回相同的 str 參數(shù)。如果到達(dá)文件末尾或者沒有讀取到任何字符,str 的內(nèi)容保持不變,并返回一個空指針。如果發(fā)生錯誤,返回一個空指針。

在讀字符時遇到end-of-file,則eof指示器被設(shè)置,如果還沒讀入任何字符就遇到這種情況,則stream保持原來的內(nèi)容,返回NULL;

如果發(fā)生讀入錯誤,error指示器被設(shè)置,返回NULL,stream的值可能被改變。


示例:

char str[100];
while (fgets(str, 10, stdin) != NULL)
{
    //數(shù)據(jù)處理
}


點(diǎn)贊(0)

C語言網(wǎng)提供由在職研發(fā)工程師或ACM藍(lán)橋杯競賽優(yōu)秀選手錄制的視頻教程,并配有習(xí)題和答疑,點(diǎn)擊了解:

一點(diǎn)編程也不會寫的:零基礎(chǔ)C語言學(xué)練課程

解決困擾你多年的C語言疑難雜癥特性的C語言進(jìn)階課程

從零到寫出一個爬蟲的Python編程課程

只會語法寫不出代碼?手把手帶你寫100個編程真題的編程百練課程

信息學(xué)奧賽或C++選手的 必學(xué)C++課程

藍(lán)橋杯ACM、信息學(xué)奧賽的必學(xué)課程:算法競賽課入門課程

手把手講解近五年真題的藍(lán)橋杯輔導(dǎo)課程

Dotcpp在線編譯      (登錄可減少運(yùn)行等待時間)