gets_s函数

Searching…

c.biancheng.net

C语言gets_s函数的用法(非常详细和完整)

C语言 gets_s () 函数用于安全地从标准输入(通常是键盘)读取字符串,它是 gets () 函数的安全替代品。 gets () 函数很容易导致缓冲区溢出,而 gets_s () 函数提供了更好的安全性,通过限制可以读取的最大字符数来防止缓冲区溢出。

standards.wiki

gets_s函数 C语言 | 标准维基

gets_s函数 该函数从标准输入流中读取最多 (n-1)个字符到参数s指向的数组,直至文件末尾或者遇到换行符。换行符会被丢弃,丢弃的换行符不计算在读取的字符数中,并在读取最后一个字符后自动向数组中添加空字符。与gets函数不同,如果输入行溢出存储缓冲,gets_s函数将其作为运行约束冲突。

learn.microsoft.com

gets_s, _getws_s | Microsoft Learn - learn.microsoft.com

The gets_s function reads a line from the standard input stream stdin and stores it in buffer. The line consists of all characters up to and including the first newline character (' \n '). gets_s then replaces the new...

zhuanlan.zhihu.com

C语言的字符串输入函数gets_s () - 知乎

gets_s ()与fgets ()的区别如下: gets_s ()只从标准输入 (通常是键盘)中读取数据,所以不需要第3个参数。 如果gets_s ()读到换行符,会丢弃它而不是存储它。 如果gets_s ()读到最大字符数都没有读到换行符,会执行以下几步。首先把目标数组中的首字符设置为空字符,读取并丢弃随后的输入直到读到换行符 ...

www.runoob.com

C 库函数 – gets () | 菜鸟教程

C 库函数 char *gets (char *str) 从标准输入 stdin 读取一行,并把它存储在 str 所指向的字符串中。 当读取到换行符时,或者到达文件末尾时,它会停止,具体视情况而定。

cppreference.cn

gets, gets_s - cppreference.cn - C++参考手册

注意 gets() 函数不执行边界检查,因此该函数极易受到缓冲区溢出攻击。 它无法安全使用(除非程序运行在限制 stdin 上可以出现内容的环 境中)。 因此,该函数在 C99 标准的第三个勘误中被废弃,并在 C11 标准中完全移除。 fgets () 和 gets_s() 是推荐的替代品。

c.biancheng.net

C语言gets函数的用法(非常详细和全面)

值得注意的是,gets_s () 函数并不是所有编译器都支持,因为它只是 C11 标准的可选部分或者扩展部分,而不是核心部分。 如果你的编译器不支持 gets_s (),可以考虑使用其他替代方案。

www.weixueyuan.net

C语言gets_s ()函数的用法和功能(非常详细)_精品词库

C语言 gets_s () 函数用于安全地从标准输入(通常是键盘)读取字符串,它是 gets () 函数的安全替代品。 gets () 函数很容易导致缓冲区溢出,而 gets_s () 函数提供了更好的安全性,通过限制可以读取的最大字符数来防止缓冲区溢出。

learn.microsoft.com

gets_s、_getws_s | Microsoft Learn - learn.microsoft.com

_getws_s 是 gets_s 的宽字符版本;其参数和返回值都是宽字符字符串。 如果 buffer 为 NULL 或 sizeInCharacters 小于或等于零,或者如果缓冲区太小,无法包含输入行和 null 终止符,这些函数将调用无效参数处理程序,如 参数验证 中所述。