Diese Hub-Seite verweist auf einzelne C-Frontend-Seiten fuer implementierte, getestete Konstrukte.
Diese Hub-Seite verweist auf einzelne C-Frontend-Seiten fuer implementierte, getestete Konstrukte.
Die Seite ist bewusst ein Ueberblickskapitel. Details, Syntax, Grenzen und Validierungsbelege stehen auf den darunterliegenden Einzelseiten, damit nicht mehrere Befehle auf einer einzigen Referenzseite vermischt werden.
PBXB64s C-Frontend zielt auf eine getestete C17/C23-Teilmenge fuer Windows x64. Benutzerfunktionen und externe Aufrufe werden fuer die Windows-x64-ABI gesenkt: Integer- und Zeigerargumente verwenden RCX, RDX, R8 und R9; Floating-Point-Argumente verwenden XMM0 bis XMM3; weitere Argumente liegen auf dem Stack. Diese ABI-Notiz ist fuer C/PB/ASM-Mischprogramme wichtig.
Portabilitaet: Die Hilfeseiten dokumentieren PBXB64s natives Windows-Ziel, nicht einen POSIX-C-Compiler. Vermeide Annahmen ueber Unix-Header, Hostprozessverhalten oder implementation-defined Groessen, sofern die jeweilige Einzelseite sie nicht ausdruecklich belegt.
Die C-Seiten verweisen auf konkrete Beispiele oder Validierungstests. Neue C-Frontend-Behauptungen sollen erst nach einem fokussierten compile/link/run-Beleg in diese Referenz aufgenommen werden.
Beginne mit dieser Uebersicht, wenn du die passende Sprachform suchst, und wechsle dann auf die Einzelseite. Dort stehen die getestete Syntax, der begrenzte PBXB64-Umfang, bekannte Einschraenkungen und der konkrete Datei- oder Matrixbeleg.
Ein guter C-Beleg ist eine kleine, eigenstaendige Quelldatei mit Exitcode 0 fuer Erfolg, klarer Fehlerrueckgabe und nur den Headern, die das gezeigte Feature wirklich benoetigt.
Diese Referenzseite soll durch ein fokussiertes Compile- oder Laufzeitbeispiel belegt sein. Das Beispiel soll Eingaben, erwartete Ausgabe oder Exit-Code und erforderliche Windows-Ressourcen oder Include-Dateien nennen.
Allgemeine Übersichtsseiten sollten trotzdem sagen, welche Familie gemeint ist, welche konkreten Befehlsseiten die Implementierung tragen und welche Formen nur der Navigation dienen. So bleibt die Seite detailliert genug, ohne so zu tun, als wäre sie eine vollständige Befehlsreferenz.
#define VERSION 1
#if VERSION >= 1
# define MSG "v1+"
#else
# define MSG "old"
#endif
#include <stdio.h>
int main(void) {
printf("%s\n", MSG);
return 0;
}