[問題] warning C4996 @ VC 2005

看板C_and_CPP (C/C++)作者時間16年前 (2009/02/18 18:52), 編輯推噓4(4013)
留言17則, 7人參與, 最新討論串1/1
請問一下各位 這樣的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

02/18 19:13, , 1F
d = 0.85F 試試
02/18 19:13, 1F

02/18 19:40, , 2F
照樓上的方法的確就沒有那一項warning了 但是為什麼呢 ?
02/18 19:40, 2F

02/18 19:47, , 3F
字面常量(Literal Constant)
02/18 19:47, 3F

02/18 19:53, , 4F
瞭解了, 謝謝1樓與3樓 . 那還想請問C4996是為什麼呢 ?
02/18 19:53, 4F

02/18 21:00, , 5F
專案設定可以設定把這項警告關掉,否則一多會拖慢速度
02/18 21:00, 5F

02/18 21:01, , 6F
至於為什麼,就是新版的編譯器認為這些函數不夠安全,要你換
02/18 21:01, 6F

02/18 21:19, , 7F
請問要去哪邊關掉這項警告呢...找不到,關掉應該沒關係吧?
02/18 21:19, 7F

02/18 22:07, , 8F
開頭加 #pragma warning( disable : 4996) 這樣?
02/18 22:07, 8F

02/18 22:23, , 9F
謝謝樓上,的確看不到warning了。
02/18 22:23, 9F

02/18 22:24, , 10F
還有個問題關於VC2005。他只能開C++的專案嗎,能否開C的??
02/18 22:24, 10F

02/18 22:25, , 11F
C 跟 C++ 有什麼不同?
02/18 22:25, 11F

02/18 22:29, , 12F
因為感覺會出現warning是不是因為我開的專案是C++的 = =?
02/18 22:29, 12F

02/18 22:29, , 13F
以前寫C 都沒遇過這樣的問題...Orz
02/18 22:29, 13F

02/18 22:35, , 14F
0.85是double.
02/18 22:35, 14F

02/18 23:32, , 15F
http://tinyurl.com/acpsdk Visual Studo都可以,看你怎麼設定
02/18 23:32, 15F

02/18 23:32, , 16F
自己慢慢摸索吧
02/18 23:32, 16F

02/19 00:42, , 17F
謝謝樓上
02/19 00:42, 17F
文章代碼(AID): #19c-XNJO (C_and_CPP)
文章代碼(AID): #19c-XNJO (C_and_CPP)