未解決の外部シンボルの謎を解明する: __imp__fprintf と __imp____iob_func
コンパイル エラーは、リンカが 2 つの外部シンボルに必要な定義を見つけられないことを示しています。シンボル: __imp__fprintf および__imp____iob_func。これらのシンボルは、入力および出力操作に関連しています。
Visual Studio 2015 では、stdin、stderr、および stdout の定義の変更により、このエラーが発生しました。以前は __iob_func() として定義されていましたが、これらのシンボルは現在は別の方法で定義されています。この不一致により、古いバージョンの Visual Studio を使用してコンパイルされたライブラリとのリンクの問題が発生します。
この問題を解決するには、__iob_func() を {stdin,stdout,*stderr を含む配列として定義できます。コード内で } を使用します。さらに、legacy_stdio_settings.lib をリンカー オプションに追加すると、sprintf() などの stdio 関数に関連するエラーに対処できます。
次の手順に従うことで、未解決の外部シンボル エラーを解決し、SDL2 プログラムを正常にコンパイルできます。 .
以上がVisual Studio 2015 で未解決の外部シンボル __imp__fprintf および __imp____iob_func が表示されるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。