Vad är filformatet D?
.d-filer innehåller källkod skriven i programmeringsspråket D, ett systemnivåspråk designat av Walter Bright på Digital Mars och som först släpptes 2001. D kombinerar C-liknande syntax med högnivåfunktioner inklusive skräpsamling (garbage collection), inbyggd enhetstestning, mall-metaprogrammering, mixins, intervall (ranges) och Uniform Function Call Syntax (UFCS).
D-källkodsfiler är vanlig UTF-8-text. En typisk .d-fil börjar med en valfri module-deklaration, följt av import-satser, och därefter deklarationer för funktioner, klasser, strukter, gränssnitt eller mallar. D stöder inbäddade dokumentationskommentarer med syntaxen /// (rad) eller / */ (block). Tre kompilatorer hanterar .d-filer: DMD (referenskompilatorn), GDC (GCC-front-end) och LDC** (LLVM-back-end), vilka alla implementerar den nuvarande D2-specifikationen som underhålls på dlang.org.
D1 (den ursprungliga versionen) fasades ut omkring 2010 och är inte källkodskompatibel med D2, som har varit den aktiva standarden sedan dess. Gränssnittsfiler med filtillägget .di har en roll som liknar C-headerfiler och innehåller deklarationer utan implementationskroppar. Textredigerare stöder .d-filer via insticksmoduler - för VS Code tillhandahåller tillägget code-d syntaxmarkering, kodkomplettering och byggintegration.
Säkerhet & trygghet
RISK: LOWKällkod i klartext - inget körbart innehåll i själva .d-filen; den måste kompileras för att köras. Säker att öppna i valfri textredigerare. Betrodd källkod från okända källor bör granskas före kompilering och körning.
Formatdetaljer
i ett nötskal- Makefile-beroendefil - GNU make och kompilatorer (gcc -MD) genererar .d-beroendefiler som listar header-beroenden; klartext, ingen koppling till språket D.
- ChemDraw kemisk utdata - I sällsynta fall använder vissa ChemDraw-exportformat .d; helt orelaterat till programmeringsspråket D.
- Patch / diff-fragment - Vissa diff/patch-verktyg använder .d för enhetliga diff-fragment på Unix-system.
Program som öppnar D-filer
Tekniska detaljer
djup specifikation| Formattyp | Källkod i klartext (UTF-8) |
| Kodning | UTF-8; BOM är valfritt; källkod som inte är UTF-8 utlöser ett kompileringsfel |
| MIME-typ | text/x-dsrc |
| Typisk filstorlek | 500 B - 200 KB per källkodsmodul |
| Moduldeklaration | Valfri `module name;`-sats överst i filen |
| Kompilatorer | DMD (referens/Digital Mars), GDC (GCC-front-end), LDC (LLVM-back-end) |
| Språkversioner | D1 (föråldrad ~2010) och D2 (nuvarande); de två är inte källkodskompatibla |
| Enhetstestning | Inbyggda `unittest`-block som kan bäddas in direkt i källkodsfiler |
| Dokumentationskommentarer | `///` (rad) och `/** */` (block) DDoc-syntax, bearbetas med flaggan DMD -D |
| Villkorlig kompilering | `version()`- och `debug`-block inuti källkoden |
| Plattform | Windows, Linux, macOS, FreeBSD |
| Relaterad fil | .di (D-gränssnittsfil - endast deklarationer, analogt med C-headers) |
| Standardbibliotek | Phobos (importeras via `import std.*`) |
| Släppt | 2001 (D 1.0 by Walter Bright / Digital Mars) |
| Senaste version | D 2.109.x (2026); D spec at dlang.org |
| Öppen standard | Ja · royaltyfri |
| Specifikation | dlang.org |
Frågor & svar
frågat av användareInga frågor än - bli den första att fråga om D-filer.