- 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
Formate et imprime l'ensemble des symboles et des valeurs dans un fichier-journal conformément au format donné.
void PrintFormat(
|
Paramètres
format_string
[in] La ligne du format comprend les symboles ordinaires et encore et les spécifications du format, si la ligne de format est suivie par les arguments.
...
[in] N'importe quelles valeurs divisées par les virgules.La quantité de paramètres ne peut pas excéder 64, y compris la ligne de format.
La valeur rendue
La chaîne.
Note
При работе в тестере стратегий в режиме оптимизации функция PrintFormat() не выполняется.
Le nombre, l'ordre et le type de paramètres doit correspondre exactement à la composition des spécificateurs, sinon le résultat de l'impression est indéfini. Au lieu de la fonction PrintFormat() on peut utiliser la fonction printf().
Si la ligne du format est suivie encore par les paramètres, cette ligne doit contenir les spécifications du format définissant le format de la sortie de ces paramètres. La spécification du format commence toujours par le symbole du signe du pour-cent (%).
La ligne du format est lue de gauche à droite. Quand il y a une première spécification du format (si elle est), la valeur du premier paramètre après la ligne du format est transformée et est déduit selon la spécification donnée. La deuxième spécification du format appelle la transformation et la conclusion du deuxième paramètre etc, jusqu'à la fin de la ligne du format.
La spécification du format a la forme suivante:
%[flags][width][.precision][{h | l | ll | I32 | I64}]type
Chaque champ de la spécification de format est ou le symbole simple, ou le nombre désignant l'option ordinaire de format. La spécification la plus simple du format contient seulement le signe du pour-cent (%) et le symbole définissant le type du paramètre déduit (par exemple %s). S'il faut déduire dans la ligne de format le symbole le signe du pour-cent, il est nécessaire d'utiliser la spécification de format %%.
flags
Drapeau |
Description |
Comportement par défaut |
---|---|---|
(moins) |
L'alignement selon le bout gauche dans la limite de la largeur donnée |
L'alignement selon le bord droit |
+ (plus) |
La sortie du signe + ou - pour les valeurs des types des signes |
Le signe est déduit seulement si la valeur est négative |
0 (zéro) |
Devant la valeur déduite on ajoute les zéros dans la limite de la largeur donnée. Si on a indiqué le drapeau 0 avec le format entier (i, u, x, X, o, d) et la spécification de l'exactitude est spécifiée (par exemple, %04.d), 0 est ignoré. |
Rien n'est pas inséré |
espace |
Devant la valeur déduite on met l'espace, si la valeur est de signe et positive |
Les espaces ne sont pas insérés |
# |
S'il est utilisé en commun avec le format o, x ou X, devant la valeur déduite est ajouté 0, 0x ou 0X conformément. |
Rien n'est pas inséré |
|
S'il est utilisé en commun avec le format e, E, a ou A, cette valeur est déduite toujours avec le point décimal. |
Le point décimal est déduit seulement s'il y a une partie non zéro fractionnaire. |
|
S'il est utilisé en commun avec le format g ou G, le drapeau définit la présence du point décimal dans la valeur déduite et empêche l'interruption des zéros principaux Le drapeau # est ignoré à l'utilisation commune avec les formats c, d, i, u, s. |
Le point décimal est déduit seulement s'il y a une partie non zéro fractionnaire. Les zéros principaux sont coupés |
width #
Le nombre non négatif décimal, qui spécifie le nombre minimal des symboles déduits de la valeur formaté. Si la quantité de symboles déduits est moins de la largeur indiquée, on ajoute la quantité correspondante des espaces à gauche ou à droite suivant l'alignement (le drapeau ). En présence du drapeau le zéro (0), devant la valeur déduite est ajouté la quantité correspondante de zéros. Si le nombre de symboles déduits plus de largeur spécifiée, la valeur déduite n'est jamais tronquée
Si à titre de la largeur on indique l'astérisque (*), dans la liste des paramètres transmis à la place correspondante doit être une valeur du type int, qui sera utilisé pour l'indication de la largeur de la valeur déduite.
precision #
Le nombre non négatif décimal, qui définit l'exactitude de lasortie la quantité de chiffres après le point décimal. À la différence de la spécification de la largeur, la spécification de l'exactitude peut couper la partie de la signification fractionnaire avec l'arrondissement ou sans arrondissement
Pour des différents types (type)de format la spécification de l'exactitude est appliquée différemment.
Types |
Description |
Comportement par défaut |
---|---|---|
a, A |
La spécification de l'exactitude indique la quantité de signes après le point décimal |
L'exactitude par défaut 6. |
c, C |
N'est pas appliqué |
|
d, i, u, o, x, X |
Indique le nombre minimal des chiffres déduits. Si le nombre de chiffres dans un paramètre correspondant est moins que exactitude indiquée les zéros sont ajoutés à la valeur déduite. La valeur déduite ne se coupe pas, si la quantité de chiffres déduits plus d'exactitude indiquée |
L'exactitude par défaut 1. |
e, E, f |
On indique le nombre de chiffres déduits après le point décimal. Le dernier chiffre déduit s'arrondit |
L'exactitude par défaut 6. Si on indique l'exactitude 0 ou la partie fractionnaire manque, le point décimal n'est pas déduit. |
g, G |
On indique le nombre maximum des chiffres signifiants |
On déduit 6 chiffres signifiants. |
s |
On indique la quantité de symboles déduits de la ligne. Si la longueur la ligne excède la valeur de l'exactitude, la ligne est tronquée sur la sortie |
On déduit toute la ligne |
PrintFormat("1. %s", _Symbol);
|
h | l | ll | I32 | I64
Les spécifications des grandeurs des données transmises à titre du paramètre.
Type du para-mètre |
Préfixe utilisé |
Spécificateur commun du type
|
---|---|---|
int |
l (minuscule L) |
d, i, o, x, or X |
uint |
l (minuscule L) |
o, u, x, or X |
long |
ll (deux minuscules 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 #
Le spécificateur du type est le seul champ obligatoire pour la sortie formatée.
Symbole |
Type |
Format de sortie |
---|---|---|
c |
int |
Le symbole du type short (Unicode) |
C |
int |
Le symbole du type char (ANSI) |
d |
int |
L'entier de signe décimal |
i |
int |
L'entier de signe décimal |
o |
int |
Le nombre entier octal sans signe |
u |
int |
Le nombre entier décimal sans signe |
x |
int |
Le nombre entier hexadecimal sans signe avec l'utilisation "abcdef" |
X |
int |
Le nombre entier hexadecimal sans signe avec l'utilisation "ABCDEF" |
e |
double |
La valeur réelle au format [ ]d.dddd e [sign]ddd, où d un chiffre décimal, dddd un ou plus des chiffres décimaux, ddd le nombre à trois chiffres, qui détermine la grandeur de l'exposant, sign le signe plus ou le moins |
E |
double |
Identiquement au format e, excepté que le signe d'exposant est déduit par la majuscule (E au lieu d'e) |
f |
double |
La valeur réelle au format [ ]dddd.dddd, où dddd un ou plus de chiffres décimaux. La quantité de signes déduits devant le point décimal dépend de la valeur de la signification du nombre. Le nombre de signes après le point décimal dépend de l'exactitude demandée. |
g |
double |
La valeur réelle, déduite au format f ou e, en fonction de celui-là quelle sortie sera plus compacte. |
G |
double |
La valeur réelle, déduite au format f ou E, en fonction de celui-là quelle sortie sera plus compacte. |
a |
double |
La valeur réelle au format [−]0xh.hhhh p±dd, où h.hhhh la mantisse dans la forme de chiffres hexadécimaux avec l'utilisation"abcdef", dd un ou plus de chiffres de l'exposant. Le nombre de signes après la virgule est définie par |
A |
double |
La valeur réelle au format [−]0xh.hhhh P±dd, où h.hhhh la mantisse dans la forme de chiffres hexadécimaux avec l'utilisation "ABCDEF", dd un ou plus de chiffres de l'exposant. Le nombre de signes après la virgule est définie par la spécification de l'exactitude |
s |
string |
La sortie de la ligne |
Au lieu de la fonction PrintFormat() on peut utiliser la fonction printf().
Exemple:
void OnStart() |
Voir aussi
StringFormat, DoubleToString, Les types matériels (double, float)