Microsoft Visual Studio 2012 scanf,getch,fopen gibi fonksiyonlarda warning sorunu(güncelleme)

Merhaba arkadaşlar , https://gizemaldemir.wordpress.com/2013/12/06/microsoft-visual-studio-2012-scanf-ve-getch-security-sorunu/ yazımda visual’12 de scanf ve getch için verilen warningden nasıl kurtulacağımızdan bahsetmiştim. Scanf i scanf_s ; gectch i de _getch olarak yazmamız gerekiyordu. Ancak dosya işlemleri kullanarak c ile ilgili bir proje yaparken fopen gibi fonksiyonlarda da sıkıntı çıktığını gördüm. Bunun içinde bir çözüm var 🙂 Öncelikle oluşturduğumuz projenin cpp dosyası üzerine sağ tıklıyoruz. En aşagıda ‘properties’ yani özellikler kısmı var. Buraya tıklıyoruz.

properties1

 

Propertiese tıkladıktan sonra karşımıza şöyle bir pencere geliyor :

properties2

Burdan sol pencereden, c/c++ ı seçip gelen menuden ‘preprocessor kısmına tıklıyoruz. Sağ tarafta ‘Preprocessor Definitions ‘ kısmı var. Ve gördüğünüz üzere _MBCS;%(PreprocessorDefinitions) yazıyor. Tek yapmamız gereken o kutucuğa _CRT_SECURE_NO_WARNINGS yazmak. Sonra uygula ve tamam a basıyoruz. Artık hatalardan kurtulduk demektir 🙂 

properties3

Ek bir uyarı daha bende ‘flushall’ fonksiyonu da hata veriyor. Onu da _flushall kullanarak halledebiliyoruz. Yine getch içinde aynı şekilde _getch kullanmamız gerekiyor. Umarım faydalı olmuştur. İyi çalışmalar 🙂