P ファイル形式とは?
.p ファイルは Pascal ソースコードファイルであり、Pascal プログラミング言語で記述された人間が読める形式のプレーンテキストです。この拡張子は、初期の Unix Pascal コンパイラ(特に Berkeley Pascal (pc))や、クラシック Macintosh Pascal 環境において、プログラムソースのデフォルト拡張子として使用されていました。
ファイル内には標準的な Pascal の構造が含まれています。program または unit ヘッダー、ライブラリの依存関係をリストする uses 句、const、type、var 宣言ブロック、そして1つ以上の procedure または function 定義があり、すべて begin...end. メインブロックで終わります。コメントには中括弧 { } または括弧とアスタリスク (* *) のデリミタが使用されます。
今日、.p ファイルは主に Free Pascal (fpc) またはその Lazarus IDE でコンパイルされますが、レガシーコードでは GNU Pascal (gpc) を対象としている場合もあります。任意のプレーンテキストエディタで .p ファイルを閲覧・編集できます。Pascal 拡張機能を備えた Visual Studio Code を使用すれば、構文ハイライトや基本的な言語サポートが提供されます。
.p は数ある Pascal ソース拡張子の1つです。現代の主流は .pas です。Free Pascal では .pp も使用され、Delphi プロジェクトファイルでは .dpr が使用されます。コンパイルされた出力は、通常、リンク前の中間ステップとして .o オブジェクトファイルを生成します。なお、.p は Progress OpenEdge ABL のプロシージャファイルとしても使用されるため、形式が曖昧な場合は周囲のツールチェーンを確認する必要があります。
- 対応 Pascal 方言: Standard/ISO Pascal, Turbo/Borland Pascal, Object Pascal, Free Pascal
- 主要な全プラットフォームの
fpc、または Unix/Linux のレガシーなgpcでコンパイル可能 - バイナリコンテンツなし - 全編 ASCII または UTF-8 のプレーンテキスト
セキュリティと安全性
リスク: LOW.p Pascal ソースファイルはプレーンテキストであり、コンパイルして実行するまでは何もしません。そのため、単に閲覧のために開くことは安全です。リスクは他のソースコードと同様です。悪意のあるロジックが含まれている可能性があるため、信頼できないソースからのコードは、コンパイルや実行の前に内容を確認してください。ビルドを試みる前に、ファイルが Pascal であることを正しく識別しているか確認してください(Progress 4GL の .p ではないこと)。
形式の詳細
概要- Progress OpenEdge ABL (4GL) プロシージャ - Progress/OpenEdge ビジネスアプリケーションソース(「.p」プロシージャファイル)。OpenEdge AppBuilder/PDS で編集・実行される。Pascal とは無関係。
- GNU gettext / Perl ソース (稀) - Perl スクリプトやその他のソースで稀に見られる。文脈に依存し、一般的ではない。
P ファイルを開くプログラム
技術的詳細
詳細仕様| MIME タイプ | text/x-pascal |
| エンコーディング | ASCII または UTF-8 プレーンテキスト。BOM は不要 |
| ファイル構造 | Pascal program/unit ヘッダー → uses 句 → const/type/var 宣言 → procedures/functions → begin…end. メインブロック |
| コメント構文 | 中括弧 { } または括弧とアスタリスク (* *) のデリミタ。Free Pascal および Delphi モードでは単一行の // もサポート |
| ファイルの識別 | マジックバイトなし - program, unit, begin, end, var, procedure, function などの Pascal キーワードによって識別 |
| 一般的なファイルサイズ | ソースモジュールあたり数百バイトから数十 KB |
| 対応 Pascal 方言 | Standard/ISO Pascal, Turbo/Borland Pascal, Object Pascal, Free Pascal 3.2.x |
| 主要コンパイラ | Free Pascal (fpc)。歴史的には Unix 上の Berkeley Pascal (pc)、Linux 上の GNU Pascal (gpc) |
| コンパイル出力 | ネイティブバイナリ実行ファイルにリンクされる中間 .o オブジェクトファイル |
| プラットフォームのサポート | クロスプラットフォームソース - Windows, macOS, Linux, Unix |
| 歴史的起源 | Unix の Berkeley Pascal およびクラシック Macintosh Pascal で採用された拡張子。後に .pas が主流の Pascal 拡張子となった |
| 関連するソース拡張子 | .pas (主流), .pp (Free Pascal), .dpr (Delphi プロジェクト), .lpr (Lazarus プロジェクト) |
| IDE サポート | Lazarus IDE(Free Pascal の GUI フロントエンド)は、.pas ソースと並んで .p を認識しコンパイル可能 |
| 構文パラダイム | Algol 派生の構造化プログラミング。begin…end のペアがすべての複合ステートメントとプログラム本体を区切る |
| 曖昧さに関する注意 | .p は Progress OpenEdge ABL の 4GL プロシージャファイルにも使用される。ファイルの開始キーワード(program/unit か ABL 固有の構文か)で両者を区別する |
| リリース日 | 1970 (Pascal language; .p used by various Unix/Mac Pascal compilers) |
| 最新バージョン | N/A (source text; tracks the Pascal dialect/compiler, e.g. Free Pascal 3.2.x / Object Pascal) |
| オープンスタンダード | はい · ロイヤリティフリー |
| 仕様書 | www.freepascal.org |
P の変換
コミュニティ Q&A
ユーザーからの質問まだ質問はありません。P ファイルについて最初の質問をしてみましょう。
よくある質問
.p ファイルとは何ですか?
.p ファイルを開くにはどうすればよいですか?
.p Pascal プログラムをコンパイルして実行するには?
.p と .pas の違いは何ですか?
.pas は標準的で広く認識されている拡張子ですが、.p はより古い、または一般的ではない拡張子(Unix/Mac Pascal コンパイラ用)です。通常は .p を .pas にリネームするだけで問題ありません。私の .p ファイルは Pascal ですか、それとも Progress 4GL ですか?
program/unit、begin..end、procedure/function を使用します。Progress OpenEdge ABL は DEFINE VARIABLE、FOR EACH、DISPLAY といったステートメントを使用します。どちらであるかによって、適切なツールが異なります。