
A Funkcióblokk STR_FORMAT egy formázott karakterláncot ad vissza.
Ez a funkcióblokk megfelel a C++-ban található sprintf függvénynek.
Megjegyzés: Ez a funkcióblokk több mint két bemenetet is tartalmazhat. Jobb egérgombbal kattintva a funkcióblokra további bemenetet adhat hozzá.
A bevitel meghatározza a formázást. Ez egy vagy több utasításból áll össze: normális karakterek (kivéve %), amelyek közvetlenül másolódnak az eredménybe, és konvertálási utasítások, amelyek saját paramétereiket használják.
Az utasítás a következő prototípus szerint működik:
%[ArgNum$][Flags][Weite][.Präzision]Spezifizierer.
Egy egész szám, amelyet egy dollárjelet ($) követ, és megadja azokat a STR# bemenetek számát, amelyek a konverzióhoz használatosak.
| Flag | Leírás |
|---|---|
| - | Balra igazítva a megadott mezőszélességben; jobbra igazítás az alapértelmezett |
| + | Pozitív számok egy pluszjellel (+); alapértelmezetten csak a negatív számokat adják ki negatív előjellel |
| (Szóköz) | Az eredményt szóközzel tölti fel. Ez az alapértelmezett. |
| 0 | Balra nullákkal tölti fel. Az s specifikátorral jobbra is nullákkal lehet kitölteni. |
| '(Karakter) | Az eredményt a megadott karakterrel tölti fel. |
Egy egész szám, amely azt határozza meg, hogy a konvertálási eredmény hány karaktert (minimum) tartalmazzon.
A pont (. ) után következő egész szám jelentése függ a specifikátortól:
Megjegyzés: Ha a pontot nem követi egy kifejezett érték a Präzisionnak, akkor 0-t feltételez.
| Spezifizierer | Leírás |
|---|---|
| % | Egy százalékjel. Nincs szükség paraméterre. |
| b | A paramétert egész számként kezelik és bináris számként adják ki. |
| c | A paramétert egész számként kezelik és ASCII karakterkészletből származó karakterként adják ki. |
| d | A paramétert egész számként kezelik és előjelű decimális számként adják ki. |
| e | A paramétert tizedes számként kezelik (pl. 1,2e+2). A Präzision megadja a tizedespont után lévő karakterek számát. |
| E | Mint az e specifikátor, de nagybetűt ír (pl. 1,2E+2). |
| f | A paramétert lebegőpontos számként kezelik és lebegőpontos számként adják ki (lokálisan függően). |
| F | A paramétert lebegőpontos számként kezelik és lebegőpontos számként adják ki (lokálisan nem függően). |
| g | Általános formátum. Legyen P a Präzision, ha nem nulla, 6, ha a Präzision nincs megadva vagy 1, ha a Präzision nulla. Akkor, ha egy konvertálás E specifikátorral X exponentet eredményezett: Ha P > X ≥ –4, akkor a konvertálás f specifikátorral és P - (X + 1) Präzisionnal történik. Különben, mint e specifikátorral és P - 1 Präzisionnal. |
| G | Mint a g specifikátor, de E és F használatával. |
| o | A paramétert egész számként kezelik és oktális számként adják ki. |
| s | A paramétert karakterláncként kezelik és adják ki. |
| u | A paramétert egész számként kezelik és előjel nélküli decimális számként adják ki. |
| x | A paramétert egész számként kezelik és hexadecimális számként adják ki (kiscarakterekkel). |
| X | A paramétert egész számként kezelik és hexadecimális számként adják ki (nagyscarakterekkel). |
Figyelmeztetés: Az c specifikátor figyelménybe veszi a kitöltést és a Weite-t.
Figyelem: A karakterláncok Weite-specifikációjának használata és a karakterkészletek, amelyek több mint egy bájtot várnak karakterenként, előre nem látható eredményeket eredményezhetnek.
A változókat átalakítják egy specifikátornak megfelelő típusra:
| Typ | Spezifizierer |
|---|---|
| Karakterlánc | s |
| Integer | d, u, c, o, x, X, b |
| Float | g, G, e, E, f, F |
A bevitel vagy a több bevitel meghatározza azokat az értékeket, amelyek a FORMAT bevitelen megadott karakterláncban kellene helyettesíteni.
A generált karakterláncot adja vissza.