ChinaUnix.net
相关文章推荐:

gets无法使用

问下为什么我把gets和scanf混合在一起用不行,但在之间加个fflush(stdin);的话就OK了呢?

by jizhang1976 - C/C++ - 2009-11-25 10:40:31 阅读(1555) 回复(3)

相关讨论

Linux下,C程序里使用gets(),编译的时候出现: the `gets' function is dangerous and should not be used. 请问这是怎么回事呢?如何解决?谢谢!

by wudicc - C/C++ - 2005-05-30 16:32:35 阅读(1799) 回复(5)

我写的c程序在gcc编译时提示 gets危险, 我想问问大家怎么得到终端的字符串输入的. 我换了如下的做法代替gets, 不知道好不好 char buf[128]; fgets (buf, 128, stdin); buf [strlen(buf)] = '\0';

by xxandxx - 程序开发 - 2005-12-12 23:11:19 阅读(505) 回复(1)

我写的c程序在gcc编译时提示 gets危险, 我想问问大家怎么得到终端的字符串输入的. 我换了如下的做法代替gets, 不知道好不好 char buf[128]; fgets (buf, 128, stdin); buf [strlen(buf)] = '\0';

by xxandxx - Linux环境编程 - 2005-12-12 23:11:19 阅读(1167) 回复(1)
by a1234567mdy - 数据安全 - 2011-12-22 08:53:39 阅读(781) 回复(0)

gets函数的危险性 gets函数和fgets函数最大的不同是gets函数的缓冲区虽然由用户提供,但是用户无法指定其一次最多读入多少字节的内容。这一点导致gets变成了一个非常危险的函数。 下例演示了gets函数的危险性。该程序定义了一个缓冲区,但是使用gets函数接收用户输入的字符串时却会出现问题。 (1)在vi编辑器中编辑该程序如下: 程序清单21-5 risk.c 利用gets函数的漏洞进行缓冲区攻击 #include stdio.h>int main(void) { /* 这个...

by skyily - Linux文档专区 - 2009-06-29 21:13:06 阅读(897) 回复(0)

#include #include main() { char buf[33][11]; for(i=0;i<3;i++) gets(buf); printf("*%c*\n",buf[1][1]); } 输入: woshi(回车) (回车) haichong(回车) 输出: *? 这是怎么回事啊?gets收都回车的时候会怎么做啊?

by 我是害虫 - C/C++ - 2008-03-10 23:46:29 阅读(1346) 回复(5)

fgets:读入一串字符。当遇到以下情况之一时将停止读入而返回; 读入的字符数已经到达n-1个(因为该函数要求指定允许读入的最大字符数,并且为读入的字符串添加‘\0’因此读入的字符最多是n-1) 遇到一个换行符 它是一个理想的每次读一行的函数。 gets:从标准输入设备中读入一串字符,直到遇到换行符为止。它是一个不推荐使用的函数。由于调用者没有指定缓存的长度,可能会造成缓存越界,从而有安全隐患。另外,它也不会将换行符存...

by carol79 - Linux文档专区 - 2007-01-08 22:08:38 阅读(630) 回复(0)

我再linux用gcc编译c程序的时候,用gets函数的话,就老是给我下面的警告信息: /tmp/ccyhTLKy.o(.text+0x53): In function `main': : the `gets' function is dangerous and should not be used. 这是怎么会事啊? 不用gets,用scanf的话,读字符串,到空格就结束了.怎么改呢?

by aero - C/C++ - 2004-03-04 15:58:27 阅读(1278) 回复(2)

代码如下: #include #include #include int main(void) { char buffer[5]; char *flag = NULL; while((flag = gets(buffer)) != NULL) { printf("%s", flag); printf("\tlength=%d\n", strlen(flag)); } return 0; } 为什么输入超过4个字符就有问题?

by hongshaohu - C/C++ - 2012-07-12 11:19:55 阅读(3004) 回复(18)