- Alert
- CheckPointer
- Comment
- CryptEncode
- CryptDecode
- DebugBreak
- ExpertRemove
- GetPointer
- GetTickCount
- GetTickCount64
- GetMicrosecondCount
- MessageBox
- PeriodSeconds
- PlaySound
- PrintFormat
- ResetLastError
- ResourceCreate
- ResourceFree
- ResourceReadImage
- ResourceSave
- SetReturnError
- SetUserError
- Sleep
- TerminalClose
- TesterHideIndicators
- TesterStatistics
- TesterStop
- TesterDeposit
- TesterWithdrawal
- TranslateKey
- ZeroMemory
PrintFormat
Formatiert und druckt Symbolvorrat im Expertenjournal laut dem vorgegebenen Format.
void PrintFormat(
|
Parameter
format_string
[in] Formatzeile bestehl aus den normalen Symbolen und auch Formatspezifikation (wenn Argumente nach der Formatzeile stehen).
...
[in] Jede Werte einfacher Typen, die durch Kommas getrennt werden. Die gesamte Anzahl der Parameter kann nicht mehr als 64 sein, einschliesslich die Formatzeile.
Rückgabewert
Zeile.
Hinweis
Im Strategie-Tester im Optimierungsmodus wird die PrintFormat()-Funktion nicht ausgeführt.
Anzahl, Reihenfolge und Art der Parameter muss exakt der Zusammensetzung der Qualifikanten entsprechen, sonst das Druckergebnis ist undefiniert. Statt der Funktion PrintFormat() kann die Funktion printf() verwendet werden.
Wenn nach der Zeile Parameter stehen, muss diese Zeile Formatspezifikationen enthalten, die Ausgabeformat dieser Parameter bestimmen. Formatspezifikation beginnt mit Symbol (%).
Formatzeile wird von links nach rechts gelesen. Wenn die erste Formatspezifikation auftritt (wenn es gibt), wird der Wert des ersten Parameters nach der Formatzeile umgewandelt und laut der vorgegebenen Spezifikation ausgegeben. Die zweite Spezifikation ruft Umwandlung und Ausgabe des zweiten Parameters auf usw bis zum Ende der Formatzeile.
Formatspezifikation sieht so aus:
%[flags][width][.precision][{h | l | ll | I32 | I64}]type
Jedes Feld der Formatspezifikation ist entweder ein einfaches Symbol oder eine Zahl, die eine normale Formatoption bezeichnet. Die einfachste Formatspezifikation enthält nur Prozentzeichen (%) und Symbol, das den Typ des Eingabeparameters (ZB %s) bestimmt. Wenn das Prozentzeichen in der Formatzeile ausgegeben werden muss, muss die Formatspezifikation %%. verwendet werden.
flags
Flagge |
Beschreibung |
Default-Verhalten |
---|---|---|
– (minus) |
Linksbuendige Ausrichtung innerhalb der vorgegebenen Breite |
Rechtsbuendige Ausrichtung |
+ (plus) |
Ausgabe des Zeichens + oder - für Werte der Zeichentypen |
Zeichen wird ausgegeben, nur wenn der Wert negativ ist. |
0 (Null) |
Vor dem Ausgabewert werden Nullen innerhalb der vorgegebenen Breite zugesetzt. Wenn die Flagge 0 mit dem ganzzahligen Format (i, u, x, X, o, d) angegeben wird und Spezifikation der Genauigkeit vorgegeben wird (ZB, %04.d),wird 0 ignoriert. |
Nichts wird eingegeben |
Space |
Vor dem Ausgabewert wird Space gestellt, wenn der Wert ein positiver Zeichenwert ist. |
Spaces werden nicht eingegeben |
# |
Beim Joint-Verwenden mit o, x oder X wird vor dem Ausgabewert 0, 0x oder 0X zugesetzt. |
Nichts wird eingegeben |
|
Beim Joint-Verwenden mit Format e, E, a oder A wird der Wert immer mit Dezimalpunkt ausgegeben. |
Dezimalpunkt wird erst dann ausgegeben, wenn es einen Nicht-Null Bruchanteil gibt. |
|
Beim Joint-Verwenden mit Format g oder G, bestimmt Flagge das Vorhandensein des Dezimalpunktes und beugt die Reduzierung der führenden Nullen vor. Flagge # wird beim Joint-Verwenden mit Formaten c, d, i, u, s ignoriert. |
Dezimalpunkt wird erst dann ausgegeben, wenn es einen Nicht-Null Bruchanteil gibt. Fuehrende Nullen werden reduziert. |
width #
Eine nichtnegative Dezimalzahl, die minimale Anzahl der Ausgabesymbole des formatierten Wertes vorgibt. Wenn die Anzahl der Ausgabesymbole weniger als angegebene Breite ist, wird die entsprechende Anzahl der Spaces links und rechts abhängig von Ausrichtung zugesetzt (Flagge -). Beim Vorhandensein der Flagge Null, wird vor dem Ausgabewert die entsprechende Anzahl von Nullen zugesetzt. Wenn die Anzahl der Ausgabesymbole mehr als die vorgegebene Breite ist, wird der Ausgabewert nie reduziert.
Wenn als Breite Sternchen (*) angegeben wird, muss in der Liste der übertragenen Parameter der Wert des Typs int an der entsprechenden Stelle sein, der für Breiteangabe des Ausgabewertes verwendet wird.
precision #
Eine nichtnegative Dezimalzahl, die Genauigkeit der Ausgabe bestimmt - Anzahl der Dezimalzeichen. Zum Unterschied von Spezifikation der Länge kann Spezifikation der Genauigkeit einen Teil des Bruchwertes mit Aufrundung oder ohne Aufrundung reduzieren.
für verschiedene Typen (type) des Formats wird Spezifikation der Genauigkeit verschieden verwendet.
Typen |
Beschreibung |
Default-Verhalten |
---|---|---|
a, A |
Spezifikation der Genauigkeit zeigt Anzahl der Dezimalzeichen |
Default-Genauigkeit – 6. |
c, C |
nicht verwendet |
|
d, i, u, o, x, X |
Zeigt minimale Zahl der ausgegebenen Ziffern. Wenn die Anzahl der Ziffern im vorgegebenen Parameter weniger als die angegebene Genauigkeit ist, wird der Ausgabewert links durch Nullen ergaenzt, Der Ausgabewert wird nicht reduziert, wenn die Anzahl der Ausgabeziffern mehr als die angegebene Genauigkeit ist. |
Default-Genauigkeit – 1. |
e, E, f |
Gibt die Anzahl der Dezimalzeichen an, die letzte Ausgabeziffer wird ausgerundet. |
Default-Genauigkeit – 6. Wenn die Genauigkeit 0 angegeben wird oder der Bruchteil fehlt, wird der Dezimalpunkt nicht ausgegeben |
g, G |
Gibt die maximale Anzahl der bedeutsamen Ziffern an |
Es wird 6 bedeutsame Ziffern ausgegeben. |
s, S |
Gibt die Anzahl der Ausgabezeilensymbole an. Wenn die Zeilenlaenge mehr als der Wert der Genauigkeit ist, wird sie bei der Ausgabe reduziert. |
die ganze Zeile wird ausgegeben |
Sehen Sie auch
h | l | ll | I32 | I64
Spezifikation der Laengedimensionen, die als Parameter übertragen werden.
Typ des Parameters |
Das verwendete Praefix |
Joint-Spezifikator des Typs |
---|---|---|
int |
l (kleiner L) |
d, i, o, x, or X |
uint |
l (kleiner L) |
o, u, x, or X |
long |
ll (zwei kleine L) |
d, i, o, x, or X |
short |
h |
d, i, o, x, or X |
ushort |
h |
o, u, x, or X |
int |
I32 |
d, i, o, x, or X |
uint |
I32 |
o, u, x, or X |
long |
I64 |
d, i, o, x, or X |
ulong |
I64 |
o, u, x, or X |
type #
Spezifikator des Typs ist ein einziges obligatorische Feld für formatierte Ausgabe.
Symbol |
Typ |
Ausgabeformat |
---|---|---|
c |
int |
Symbol des Typs short (Unicode) |
C |
int |
Symbol des Typs char (ANSI) |
d |
int |
Zeichendezimalganzzahl |
i |
int |
Zeichendezimalganzzahl |
o |
int |
Zeichenlose Oktalganzzahl |
u |
int |
Zeichenlose Dezimalganzzahl |
x |
int |
Zeichenlose hexadezimalganzzahl mit "abcdef" Verwendung |
X |
int |
Zeichenlose hexadezimalganzzahl mit "ABCDEF" Verwendung |
e |
double |
Realwert in Format [ – ]d.dddd e [sign]ddd, wo d – eine Dezimalzahl, dddd – eine oder mehrere Dezimalzahlen, ddd – dreistellige Zahl, die Exponentengroesse bestimmt, Zeichen – plus oder minus |
E |
double |
Dem Format e, gleich unter Ausschluss, dass Exponentenzeichen mit einem Grossbuchstaben anfaengt (E statt e) |
f |
double |
Realwert in Format [ – ]dddd.dddd, wo dddd – eine oder mehrere Dezimalziffern. Anzahl der ausgegebenen Dezimalzeichen hängt von der Größe der Zahl ab. Anzahl der Dezimalzeichen hängt von der erforderlichen Genauigkeit ab. |
g |
double |
Realwert, der im Format f oder e ausgegeben wird, abhängig davon, welches Format kompakter ist. |
G |
double |
Realwert der im Format f oder e ausgegeben wird, abhängig davon, welche Ausgabe kompakter ist. |
a |
double |
Realwert in Format [−]0xh.hhhh p±dd, wo h.hhhh – mantissa in Form der hexadezimaler Ziffern mit Verwendung von "abcdef", dd – eine oder mehrere Ziffern einer Exponente. Anzahl der Dezimalzeichen wird durch Spezifikation der Genauigkeit bestimmt. |
A |
double |
Realwert in Format [−]0xh.hhhh P±dd, wo h.hhhh – mantissa in Form von hexadezimaler Ziffern mit Verwendung von "ABCDEF", dd – eine oder mehrere Ziffern einer Exponente. Anzahl der Dezimalzeichen wird durch Spezifikation der Genauigkeit bestimmt. |
s |
string |
Zeilenausgabe |
Anstatt der Funktion PrintFormat() kann die Funktion printf() verwendet werden.
Beispiel:
void OnStart() |
Sehen Sie auch