Functieblok STR_FORMAT

De functieblok STR_FORMAT geeft een geformatteerde tekenreeks terug.

Deze functieblok komt overeen met de functie sprintf in C++.

Opmerking: Deze functieblok kan meer dan twee ingangen hebben. U kunt met de rechtermuisknop op de functieblok klikken om een andere ingang toe te voegen.

Ingang Formaat

De ingang definieert het formaat. Dit bestaat uit geen of meerdere instructies: Normale tekens (behalve %), die direct in het resultaat worden gekopieerd en instructies voor conversie, die elk hun eigen parameters oproepen.

Daarbij volgt de instructie voor conversie het volgende prototype:

%[ArgNum$][Flags][Weite][.Precisie]Specificator.
ArgNum

Een geheel getal gevolgd door een dollarteken $, dat het nummer van de ingang STR# aangeeft die voor de conversie moet worden gebruikt.

Flags
Flag Beschrijving
- Links uitgelijnd binnen de opgegeven veldbreedte; Rechts uitgelijnd is de standaard
+ Positieve getallen met een plus teken +; Standaard worden alleen negatieve getallen met negatieve tekens weergegeven
(Leertekens) Vult het resultaat op met spaties. Dit is de standaard.
0 Vult links op met nullen. Met de s-specificator kan dit ook rechts opvullen met nullen.
'(Teken) Vult het resultaat op met het opgegeven teken.
Weite

Een geheel getal dat aangeeft hoeveel tekens (minimum) het conversieresultaat moet hebben.

Precisie

De betekenis van een punt . gevolgd door een geheel getal hangt af van de specificator:

  • Voor de specificators e, E, f en F: Dit stelt het aantal decimalen in dat na het decimale scheidingsteken moet worden weergegeven (standaard is dit 6).
  • Voor de specificators g en G: Het maximale aantal significante decimalen dat moet worden weergegeven.
  • Voor de s-specificator: Gedraagt zich als een knip punt, dat een maximaal aantal tekens in de tekenreeks aangeeft.

Opmerking: Als het punt zonder een expliciete waarde voor de precisie wordt opgegeven, wordt 0 aangenomen.

Specificator
Specificator Beschrijving
% Een procentteken. Geen parameter nodig.
b De parameter wordt als geheel getal behandeld en als binaire getal weergegeven.
c De parameter wordt als geheel getal behandeld en als teken uit de ASCII-tekenreeks weergegeven.
d De parameter wordt als geheel getal behandeld en als (getekend) decimale getal weergegeven.
e De parameter wordt als getal in wetenschappelijke notatie (bijv. 1,2e+2) behandeld. De specificatie van de precisie staat voor het aantal tekens na het decimale punt.
E Net als de specificator e, maar schrijft een hoofdletter (bijv. 1,2E+2).
f De parameter wordt als drijvendekommagetal beschouwd en als drijvendekommagetal weergegeven (afhankelijk van de locale).
F De parameter wordt als drijvendekommagetal beschouwd en als drijvendekommagetal (onafhankelijk van de locale) weergegeven.
g Algemeen formaat.
Zij P de precisie, als niet nul, 6 als de precisie niet is opgegeven of 1 als de precisie nul is. Dan, als een conversie met E een exponent van X zou hebben:
Als P > X ≥ −4 is de conversie met specificator f en precisie P - (X + 1). Anders zoals met specificator e en precisie P - 1.
G Net als de specificator g, maar het wordt E en F gebruikt.
o De parameter wordt als geheel getal beschouwd en als octale getal weergegeven.
s De parameter wordt als tekenreeks beschouwd en weergegeven.
u De parameter wordt als geheel getal beschouwd en als ongetekend decimale getal weergegeven.
x De parameter wordt als geheel getal beschouwd en als hexadecimale getal (met kleine letters) weergegeven.
X De parameter wordt als geheel getal beschouwd en als hexadecimale getal (met hoofdletters) weergegeven.

Let Op: De specificator c negeert opvullen en breedte.

Waarschuwing: Het proberen om de combinatie van tekenreeksen met breedte-specificeren en tekensets die meer dan een byte per teken verwachten te gebruiken, leidt tot onvoorspelbare resultaten.

Variabelen worden omgezet naar een voor de specificator passend type:

Type Specificator
Tekenreeks s
Integer d, u, c, o, x, X, b
Float g, G, e, E, f, F

Ingang STR1..STR#

De ingang of de meerdere ingangen definieeren de respectieve te vervangen waarde van de opgegeven tekenreeks aan de ingang FORMAT.

Uitgang

Geeft de gegenereerde tekenreeks terug.