2015-04-23 252 views
0

gets_s()函数在我的编译器上不起作用。我正在使用GCC的代码块。gets_s给gcc提供错误

这是错误:

undefined reference to '_imp_gets_s. 

谁能告诉我如何解决这个错误。

+0

'gets_s'它自己是一个错误,使用'fgets()'。 –

+0

不要使用'gets'使用'fgets()' – Gopi

+0

但是c11表示获取函数不再使用。而是使用gets_s而不是 – jashan

回答

4

您应该使用fgets()而不是gets()gets_s()

Referrring C11,§K.3.5.4.1,第6段,

fgets()功能允许正确编写的程序以安全地处理输入线过长的结果阵列中存储。一般来说,这要求fgets()的调用者关注结果数组中是否存在换行符。考虑使用fgets()(以及基于换行符的任何所需处理)而不是gets_s()