エラーC4996: unsafeの解決方法と、対 'fopen', 'scanf' などで_CRT_SECURE_NO_WARNINGSを追加してもエラーが報告されることの注意点です。
2022-01-21 22:43:12
vsは以下のようなエラーで実行されます。
'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
これは、VSの上位バージョンで、scanf、fopenなどの関数は安全でないと言って、デフォルトでは使わず、それらの関数の代わりに、scanf_s、fopen_sなどの関数を使用するものです。もし、関数を変更せず、scanf, fopenなどを使い続けたい場合は、以下のようにすれば解決します。
-
プロジェクトのプロパティで、順番に選択して設定します。プロパティ ->構成プロパティ ->C/C++->プリプロセッサ ->プリプロセッサの定義 の順に選択し、定義の中に、直接、以下を追加します。
_CRT_SECURE_NO_WARNINGS
で完了です。 -
を追加します。
#define _CRT_SECURE_NO_WARNINGS
これらの方法はどちらもエラーを修正しますが、最初の方法はグローバルでシンプルな方法ですが、注意すべきなのは、その際に
_CRT_SECURE_NO_WARNINGS
この問題は、vsのバグではなく、マクロに気づかずに行を追加してしまったため
プロジェクトの構成 (Debug/Release) とプラットフォーム (x64/x86) が、現在実行中のプロジェクトの構成と異なっている場合
. 例えば、x64 Debugモードで実行しているのに、プロパティを設定すると、プロジェクト構成がx64 Releaseになってしまうので、設定しないのと同じになり、当然エラーを報告し続けることになります。
この設定に限らず、プロジェクトのプロパティを設定するときは、プロジェクトの構成とランタイムの構成が同じかどうかに気をつけないとエラーになりますね。
関連
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
ハートビート・エフェクトのためのHTML+CSS
-
HTML ホテル フォームによるフィルタリング
-
HTML+cssのボックスモデル例(円、半円など)「border-radius」使いやすい
-
HTMLテーブルのテーブル分割とマージ(colspan, rowspan)
-
ランダム・ネームドロッパーを実装するためのhtmlサンプルコード
-
Html階層型ボックスシャドウ効果サンプルコード
-
QQの一時的なダイアログボックスをポップアップし、友人を追加せずにオンラインで話す効果を達成する方法
-
sublime / vscodeショートカットHTMLコード生成の実装
-
HTMLページを縮小した後にスクロールバーを表示するサンプルコード
-
html のリストボックス、テキストフィールド、ファイルフィールドのコード例