【建站服务】专业网站建设-网站设计-网站制作与网站开发-高端品牌企业宣传策划-黔南上往建站-域名申请
作者: 风兰 . 阅读量: 6 . 发表时间:2022-09-21 03:16:38
上往建站提供服务器空间服务商,百度快照排名,网站托管,百度推广运营,致力于设计外包服务与源代码定制开发,360推广,搜狗推广,增加网站的能见度及访问量提升网络营销的效果,主营:网站公司,百度推广公司电话,官网搭建服务,网站服务企业排名,服务器空间,英文域名等业务,专业团队服务,效果好。
专业网站建设-网站设计-网站制作与网站开发-高端品牌企业宣传策划-黔南上往建站

char str[5];
printf( "Enter a value :");
gets( str );
printf( " You entered: ");
puts( str );
return 0;
}
如果输入123(长度小于5)结果为:
Enter a value :123
You entered: 123
如果输入123456789(长度大于5)结果为:
Enter a value :123456789
You entered: 123456789
虽然正常显示了,但是系统提示程序崩溃了
如果不能正确使用gets()函数,带来的危害是很大的,就如上面我们看到的,输入字符串的长度大于缓冲区长度时,并没有截断,原样输出了读入的字符串,造成程序崩溃。
考虑到程序安全性和健壮性,建议用fgets()来代替gets()。如:
#include <stdio.h>
int main( )
{
char str[5];
printf( "Enter a value :");
fgets( str,5,stdin ); //fgets()函数;
printf( " You entered: ");
puts( str );
return 0;
}
simone
simone
183***1483@qq.com
参考地址
5年前 (2017-03-23)
Mrodot
mro***@qq.com
参考地址
25
Windows、Unix、Mac不同操作系统的换行问题 回车符和换行符
一、概念:
换行符‘ ’和回车符‘’
(1)换行符就是另起一行 --- ' ' 10 换行(newline)
(2)回车符就是回到一行的开头 --- '' 13 回车(return)
所以我们平时编写文件的回车符应该确切来说叫做回车换行符
CR: 回车(Carriage Return) LF: 换行(Line Feed)
二、应用:
专业网站建设-网站设计-网站制作与网站开发-高端品牌企业宣传策划-黔南上往建站
上往建站提供搭建网站,域名注册,官网备案服务,网店详情页设计,企业网店,专业网络店铺管理运营全托管公司咨询电话,服务器空间,微信公众号托管,网页美工排版,致力于域名申请,竞价托管,软文推广,全网营销,提供标准级专业技术保障,了却后顾之忧,主营:虚拟主机,网站推广,百度竞价托管,网站建设,上网建站推广服务,网络公司有哪些等业务,专业团队服务,效果好。
服务热线:400-111-6878 手机微信同号:18118153152(各城市商务人员可上门服务)
关键词:网站建设,企业网站,网站制作,网页设计,高端网站建设,企业网站制作,网页制作,制作网站,网站设计,高端网页设计,高端网站设计,做网站,自适应网站



nux系统下需要这样编译:不支持 gets 与 puts, 需要用 fgets 和 fputs。
将以下代码放到 test.c 文件:
#include <stdio.h>int main(){ char c[100]; printf("Enter a value:"); fgets( c,100,stdin ); printf(" you entered:"); fputs( c,stdout ); return 0;}编译执行以上代码,输出结果为:
ms0
261***255@qq.com
simone
183***1483@qq.com
参考地址
gets()与fgets()
gets()
gets函数原型:char*gets(char*buffer);//读取字符到数组:gets(str);str为数组名。
gets函数功能:从键盘上输入字符,直至接受到换行符或EOF时停止,并将读取的结果存放在buffer指针所指向的字符数组中。
读取的换行符被转换为null值,做为字符数组的最后一个字符,来结束字符串。
注意:gets函数由于没有指定输入字符大小,所以会无限读取,一旦输入的字符大于数组长度,就会发生内存越界,
从而造成程序崩溃或其他数据的错误。
fgets()
fgets函数原型:char *fgets(char *s, int n, FILE *stream);//我们平时可以这么使用:fgets(str, sizeof(str), stdin);
其中str为数组首地址,sizeof(str)为数组大小,stdin表示我们从键盘输入数据。
fgets函数功能:从文件指针stream中读取字符,存到以s为起始地址的空间里,直到读完N-1个字符,或者读完一行。
注意:调用fgets函数时,最多只能读入n-1个字符。读入结束后,系统将自动在最后加'',并以str作为函数值返回。
借用教程实例,我把char str[100] 改为 char str[5]
#include <stdio.h>int main( ){ char str[5];