导航:首页 > 源码编译 > 为什么编译器其他函数识别不了

为什么编译器其他函数识别不了

发布时间:2025-03-13 09:32:04

⑴ c语言的gets函数编译不成功阿,很短的程序

C语言的gets函数一般包含在stdio.h头文件里,如果没有包含比头文件那可能会有问题。第二种情况包含了还出问题,说明你的编译器已经不支持这个函数了,这个函数非常不安全,容易造成溢出,建议换成fgets函数。

函数原型

char *fgets(char *buf, int bufsize, FILE *fp);

数解释:

参数一是输入字符串存放地址,

参数二是存放地址最大容量,

参数三是从哪里输入,可以从文件也可从输入设备,如果从输入设备输入这个参数可以写成stdin,如果从文件输入此参数为文件指针。

返回值

输入成功返回参数一,失败返回NULL.

补充知识:

为什么gets不让用呢,我们可以看它的原型:char *gets(char *buf);

这个函数可以一直输入知道换行或者EOF,它并不考虑buf空间是否足够大能放下,这就容易导致溢出,有些别有用心的人就会利用这个漏洞去攻击你的程序。

而fgets可以通过第二参数保证不会读入超过buf空间的字符。

⑵ 为什么在linux中strlwr()不能编译通过,已经查看过<string.h>,的确在头文件中没有

strlwr和strupr都不是标准的C库函数!有些编译器不支持很正常,编译器不支持的,只能自己定义这两个函数并且用代码自己去实现它。
个人使用过VC++2010,是可以编译通过的,证明VC++2010里边的编译器支持这两个函数。
而linux中的GCC编译器则编译不通过,证明linux下的GCC编译器不支持这两个函数。

阅读全文

与为什么编译器其他函数识别不了相关的资料

热点内容
安卓系统怎么访问ftp服务器地址 浏览:87
java开发游戏服务器 浏览:642
如何找到安卓系统的重要文件 浏览:616
历史流通盘源码 浏览:265
为什么要用服务器集群 浏览:302
排序算法掌握几个 浏览:165
来跟我一起做解压手帐吧 浏览:382
海力士服务器ecc4g怎么用 浏览:259
松下冰箱用什么压缩机 浏览:210
编程ai识别文字内容 浏览:873
pdf六级 浏览:391
服务器地址登录不了 浏览:352
方正pdf软件 浏览:286
php读取js变量 浏览:477
for页码算法 浏览:605
编程大赛的热身赛 浏览:384
qq如何完成20万台服务器 浏览:498
压缩感知凸优化算法 浏览:560
文件图片无故加密怎么解除 浏览:300
程序员研二 浏览:900