| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1823 人关注过本帖, 1 人收藏
标题:初学C语言,请教一下各位高手,谢谢
只看楼主 加入收藏
toofunny
Rank: 4
等 级:业余侠客
帖 子:71
专家分:200
注 册:2012-7-22
收藏
得分:3 
以下是引用TonyDeng在2013-9-28 10:43:14的发言:

到現在還不知道C舊函數的溢出攻擊危害何在,還學個鳥。
你指望一个不知缓冲区为何物的人理解“溢出攻击”么???
凡是都要一步一步来。
更何况,谁会去攻击一个菜鸟写的helloworld??
2013-09-28 11:01
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
你教人說scanf()正確,就是誤人子弟。

授人以渔,不授人以鱼。
2013-09-28 11:03
toofunny
Rank: 4
等 级:业余侠客
帖 子:71
专家分:200
注 册:2012-7-22
收藏
得分:0 
莫非你当年用的就不是scanf()?winXP也有漏洞的,你说用xp就是误人子弟?非要用win8?
2013-09-28 11:09
chrisgardner
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:73
专家分:114
注 册:2013-9-25
收藏
得分:0 
回复 20楼 TonyDeng
我承认是一个新手,好多东西都不懂,所以才到这里提问,希望能得到指点学到知识。谢谢大家!
2013-09-29 09:05
Enan
Rank: 2
等 级:论坛游民
帖 子:20
专家分:21
注 册:2013-9-28
收藏
得分:0 
要不你换vc++6.0,编译看有没有错,估计是软件的问题吧!
2013-09-29 09:46
dyh839911010
Rank: 2
来 自:武汉
等 级:论坛游民
帖 子:63
专家分:71
注 册:2011-9-14
收藏
得分:0 
确实啊,这是为什么呢?

把简单做到纯粹,自然有生活的成就。
游戏开发吧诚邀各位的驻足!
2013-09-29 17:32
帅哥汉张
Rank: 2
等 级:论坛游民
帖 子:16
专家分:15
注 册:2013-6-22
收藏
得分:0 
scanf()在读取时不检查边界,所以可能会造成内在泄露。所以vc++2005/2008中提供了scanf_s(),在调用时,必须提供一个数字以表明最多读取多少位字符。

你这里应该这样scanf_s("%c",&t , 1)
2013-09-29 19:13
dyh839911010
Rank: 2
来 自:武汉
等 级:论坛游民
帖 子:63
专家分:71
注 册:2011-9-14
收藏
得分:0 
编译器的问题吧

把简单做到纯粹,自然有生活的成就。
游戏开发吧诚邀各位的驻足!
2013-10-03 14:07
tianxiadiyih
Rank: 2
来 自:神秘星球
等 级:论坛游民
帖 子:30
专家分:48
注 册:2013-10-2
收藏
得分:0 
好深奥的问题,学习了,我用vs2008,vs2010及更高版本没有动态帮助,其实版本太高反而不方便学习。很久之前就发现msdn内容好大。

永远的学生
2013-10-03 14:17
tianxiadiyih
Rank: 2
来 自:神秘星球
等 级:论坛游民
帖 子:30
专家分:48
注 册:2013-10-2
收藏
得分:0 
“scanf()在读取时不检查边界,所以可能会造成内在泄露。所以vc++2005/2008中提供了scanf_s(),在调用时,必须提供一个数字以表明最多读取多少位字符。

你这里应该这样scanf_s("%c",&t , 1)”说得好,真的学习了。

永远的学生
2013-10-03 14:18
快速回复:初学C语言,请教一下各位高手,谢谢
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018362 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved