Wat is het P-bestandsformaat?
Een .p-bestand is een Pascal-broncodebestand - platte, voor mensen leesbare tekst geschreven in de programmeertaal Pascal. De extensie werd gebruikt door vroege Unix Pascal-compilers, met name Berkeley Pascal (pc), en door klassieke Macintosh Pascal-omgevingen, waar .p de standaardextensie was voor programmabronnen.
In het bestand vindt u standaard Pascal-constructies: een program- of unit-header, een uses-clausule met bibliotheekafhankelijkheden, const-, type- en var-declaratieblokken, en een of meer procedure- of function-definities, allemaal eindigend met een begin...end. hoofdblok. Commentaar gebruikt accolades { } of haakje-ster (* *) als scheidingstekens.
Tegenwoordig worden .p-bestanden voornamelijk gecompileerd met Free Pascal (fpc) of de bijbehorende Lazarus IDE, hoewel legacy-code gericht kan zijn op GNU Pascal (gpc). Elke tekstverwerker opent .p-bestanden voor lezen en bewerken; Visual Studio Code met een Pascal-extensie biedt syntax-accentuering en basis taalondersteuning.
.p is een van de verschillende Pascal-bronextensies. De dominante moderne keuze is .pas; Free Pascal gebruikt ook .pp; Delphi-projectbestanden gebruiken .dpr. Gecompileerde uitvoer produceert doorgaans een .o objectbestand als tussenstap voor het linken. Merk op dat .p ook wordt gebruikt door Progress OpenEdge ABL voor procedurebestanden, dus de omliggende toolchain moet worden gecontroleerd wanneer het formaat dubbelzinnig is.
- Ondersteunde Pascal-dialecten: Standard/ISO Pascal, Turbo/Borland Pascal, Object Pascal, Free Pascal
- Gecompileerd met
fpcop alle grote platforms of legacygpcop Unix/Linux - Geen binaire inhoud - uitsluitend ASCII of UTF-8 platte tekst
Beveiliging & veiligheid
RISICO: LOWEen .p Pascal-bronbestand is platte tekst en doet niets totdat u het COMPILEERT en uitvoert - dus het simpelweg openen om te lezen is veilig. Het risico is hetzelfde als bij elke broncode: het kan kwaadaardige logica bevatten, dus controleer code van niet-vertrouwde bronnen voordat u het resulterende programma compileert/uitvoert. Zorg ervoor dat u het bestand correct hebt geïdentificeerd als Pascal (in tegenstelling tot een Progress 4GL .p) voordat u het probeert te bouwen.
Formaatdetails
in een notendop- Progress OpenEdge ABL (4GL) procedure - Progress/OpenEdge broncode voor zakelijke toepassingen ('.p' procedurebestanden), bewerkt/uitgevoerd in de OpenEdge AppBuilder/PDS - niet gerelateerd aan Pascal.
- GNU gettext / Perl-broncode (zeldzaam) - Af en toe gezien voor Perl-scripts of andere bronnen; contextafhankelijk en ongebruikelijk.
Programma's die P-bestanden openen
Technische details
diepe specificaties| MIME-type | text/x-pascal |
| Codering | ASCII of UTF-8 platte tekst; geen BOM vereist |
| Bestandsstructuur | Pascal program/unit header → uses-clausule → const/type/var declaraties → procedures/functions → begin…end. hoofdblok |
| Commentaarsyntaxis | Accolades { } of haakje-ster (* *) scheidingstekens; enkele regel // ondersteund in Free Pascal- en Delphi-modus |
| Bestandsidentificatie | Geen magic bytes - geïdentificeerd door Pascal-trefwoorden zoals program, unit, begin, end, var, procedure, function |
| Typische bestandsgrootte | Enkele honderden bytes tot tientallen KB per bronmodule |
| Ondersteunde Pascal-dialecten | Standard/ISO Pascal, Turbo/Borland Pascal, Object Pascal, Free Pascal 3.2.x |
| Primaire compiler | Free Pascal (fpc); historisch Berkeley Pascal (pc) op Unix, GNU Pascal (gpc) op Linux |
| Compilatie-uitvoer | Tussenliggend .o objectbestand gelinkt naar een systeemeigen binair uitvoerbaar bestand |
| Platformondersteuning | Platformonafhankelijke broncode - Windows, macOS, Linux, Unix |
| Historische oorsprong | Extensie overgenomen door Berkeley Pascal op Unix en klassieke Macintosh Pascal; .pas werd later de mainstream Pascal-extensie |
| Gerelateerde bronextensies | .pas (dominant), .pp (Free Pascal), .dpr (Delphi-project), .lpr (Lazarus-project) |
| IDE-ondersteuning | Lazarus IDE (de GUI-frontend van Free Pascal) herkent en compileert .p naast .pas-bronnen |
| Syntaxisparadigma | Gestructureerd programmeren afgeleid van Algol; begin…end-paren bakenen alle samengestelde instructies en de programmaromp af |
| Opmerking over dubbelzinnigheid | .p wordt ook gebruikt door Progress OpenEdge ABL voor 4GL-procedurebestanden - het openingswoord van het bestand (program/unit versus ABL-specifieke syntaxis) onderscheidt de twee |
| Uitgebracht | 1970 (Pascal language; .p used by various Unix/Mac Pascal compilers) |
| Laatste versie | N/A (source text; tracks the Pascal dialect/compiler, e.g. Free Pascal 3.2.x / Object Pascal) |
| Open standaard | Ja · royaltyvrij |
| Specificatie | www.freepascal.org |
P conversies
Community V&A
gevraagd door gebruikersNog geen vragen - wees de eerste om iets te vragen over P-bestanden.