'C'ファイルをUNIX(AIX / HPUX / Solaris)からLinux環境に移動しているときに、プラグマの影響を説明するのに役立つ人はいますか。それらを正常に動作させるために変更を加える必要がありますか、それとも変更なしで正常に動作しますか?
可能であれば、ある環境(unix)から別の環境(linux)に移植する際に考慮しなければならない可能性のある影響を教えてください。
よろしくお願いします。
これは主にコンパイラに依存します。#pragmasは、それらを理解しないコンパイラによって無視されます。現在使用しているコンパイラがプログラムのロジックにこれらの一部を使用している場合、プログラムは移植性がないため、変更する必要があります。
Pragma
C 標準の一部です。
`#pragma' ディレクティブは、言語自体で伝達されるものを超えて、コンパイラに追加情報を提供するために C 標準で指定された方法です。このディレクティブ (一般にプラグマとして知られている) の 3 つの形式が、1999 C 標準で指定されています。AC コンパイラは、好きな意味を他のプラグマに自由に付加できます。
それらを正常に動作させるために変更を加える必要がありますか? または、変更しなくても正常に動作します。
異なるコンパイラを使用しています。そのため、いくつかの変更が必要になります。たとえば、GCC は独自のプラグマを提供します。
#pragma GCC dependency
#pragma GCC poison
#pragma GCC system_header
#pragma GCC warning
#pragma GCC error
異なるコンパイラを使用する他のプラットフォームに移植する場合、これらのことを考慮する必要があります。コンパイラのドキュメントを調べることをお勧めします。
これらの議論を参照してください
C での #pragma の使用 #pragma を使用して、
どのようなコードを書いたことがありますか?
プラグマ文の使い方を教えてください