warning: the 'gets' function is dangerous and should not be used.的解决办法
在Linux下,使用
gets(str)
函数报错:warning: the 'gets' function is dangerous and should not be used.
随便百度一下都能出现很多解决问题,都是让你换成fput(),换了之后那还是解决问题吗?如:
解决办法:采用
fgets(str,100,stdin);//100为size
问题解决!
问题是解决了,警告没有了,没有了正常好吗?你把函数给我换了,我gets()函数的警告你还是没给我解决,根本问题在于,linux、下gcc不支持gets()函数,step跟踪一下就能发现问题所在,那就是:gets从终端读入是的字符串是用\0结束的,而fgets是以\n结束的(一般输入都用ENTER结束),然后strcmp两者的时候是不会相等的!
所以呢,为了安全性,这个警告其实是可以忽略的,不影响程序的,所以就让他warning去把……
这个问题我也没解决,但是我告诉大家,这个警告是无关紧要的,所以大家放心用把……
点滴积累世界……