作者onicalz ()
站内C_and_CPP
标题[问题] warning C4996 @ VC 2005
时间Wed Feb 18 18:52:04 2009
请问一下各位
这样的warning所代表的意思是什麽呢?
该怎样做才会消掉这些warning
warning C4996: 'scanf' 已经宣告为取代
warning C4996: 'fopen' 已经宣告为取代
warning C4996: 'fscanf' 已经宣告为取代
以及
'=' : 从 'double' 转换为 'float',是由较大的型别转换为较小的型别,
可能导致资料遗失
这边我只是写
float d ;
d = 0.85 ;
不晓得为什麽会出像这样的警告...
请大家教一下 Thx.
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.113.236.140
1F:→ COLDTURNIP:d = 0.85F 试试 02/18 19:13
2F:→ onicalz:照楼上的方法的确就没有那一项warning了 但是为什麽呢 ? 02/18 19:40
3F:推 chrisdar:字面常量(Literal Constant) 02/18 19:47
4F:→ onicalz:了解了, 谢谢1楼与3楼 . 那还想请问C4996是为什麽呢 ? 02/18 19:53
5F:推 zlw:专案设定可以设定把这项警告关掉,否则一多会拖慢速度 02/18 21:00
6F:→ zlw:至於为什麽,就是新版的编译器认为这些函数不够安全,要你换 02/18 21:01
7F:→ onicalz:请问要去哪边关掉这项警告呢...找不到,关掉应该没关系吧? 02/18 21:19
8F:→ leslieha:开头加 #pragma warning( disable : 4996) 这样? 02/18 22:07
9F:→ onicalz:谢谢楼上,的确看不到warning了。 02/18 22:23
10F:→ onicalz:还有个问题关於VC2005。他只能开C++的专案吗,能否开C的?? 02/18 22:24
11F:→ HudsonE:C 跟 C++ 有什麽不同? 02/18 22:25
12F:→ onicalz:因为感觉会出现warning是不是因为我开的专案是C++的 = =? 02/18 22:29
13F:→ onicalz:以前写C 都没遇过这样的问题...Orz 02/18 22:29
14F:推 plover:0.85是double. 02/18 22:35
16F:→ zlw:自己慢慢摸索吧 02/18 23:32
17F:→ onicalz:谢谢楼上 02/19 00:42