Blok funkcija STR_FORMAT

Blok funkcija STR_FORMAT vraća formatiranu niz znakova.

Ovaj blok funkcije odgovara funkciji sprintf u C++.

Napomena: Ovaj blok funkcije može imati više od dva ulaza. Možete kliknuti desnim tasterom miša na blok funkcije kako biste dodali još jedan ulaz.

Ulaz Format

Ulaz definira formatiranje. Sastoji se od nulte ili više uputa: normalnih znakova (osim %), koji se direktno kopiraju u rezultat i upute za konverziju, koje svaka uzima svoje vlastite parametre.

Uputa za konverziju slijedi sljedeći prototip:

%[ArgNum$][Flags][Weite][.Präzision]Spezifizierer.
ArgNum

Cijeli broj koji se završava znakom dolara $, a označava broj ulaza STR# koji treba koristiti za konverziju.

Flags
Flag Beschreibung
- Lijevo poravnanje unutar navedene širine polja; desno poravnanje je standard
+ Pozitivni brojevi s plus znakom +; standardno se samo negativni brojevi ispisuju sa znakom minus
(Leerzeichen) Popunjava rezultat razmacima. Ovo je standard.
0 Popunjava lijevo nula. S specifikatorom s može se i desno popuniti nulama.
'(Zeichen) Popunjava rezultat navedenim znakom.
Weite

Cijeli broj koji označava koliko znakova (minimum) treba imati konvertirani rezultat.

Präzision

Značaj točke . praćene cijelim brojem ovisi o specifikatoru:

  • Za specifikatore e, E, f i F: Ovo postavlja broj decimalnih mjesta koji se trebaju ispisati nakon decimalnog zareza (standardno je ovo 6).
  • Za specifikatore g i G: Maksimalan broj značajnih decimalnih mjesta za ispis.
  • Za specifikator s: Ponaša se kao točka odrezivanja, koja označava maksimalan broj znakova u nizu znakova.

Napomena: Ako je točka navedena bez eksplicitne vrijednosti za preciznost, pretpostavlja se 0.

Spezifizierer
Specifikator Beschreibung
% Postotni znak. Nije potreban parametar.
b Parametar se tretira kao cijeli broj i ispisuje se kao binarni broj.
c Parametar se tretira kao cijeli broj i ispisuje se kao znak iz ASCII skupa znakova.
d Parametar se tretira kao cijeli broj i ispisuje se kao (značajni) decimalni broj.
e Parametar se tretira kao broj u znanstvenom formatu (npr. 1.2e+2). Navođenje preciznosti označava broj znakova nakon decimalnog zareza.
E Kao specifikator e, ali piše veliko slovo (npr. 1.2E+2).
f Parametar se tretira kao decimalni broj i ispisuje se kao decimalni broj (ovisno o lokalitetu).
F Parametar se tretira kao decimalni broj i ispisuje se kao decimalni broj (nezavisno o lokalitetu).
g Opći format.
Neka P bude preciznost, ako nije nula, 6 ako preciznost nije navedena ili 1 ako je preciznost nula. Tada, ako bi konverzija putem E imala eksponent X:
Ako je P > X ≥ −4, konvertira se s specifikatorom f i preciznošću P - (X + 1). Inače kao s specifikatorom e i preciznošću P - 1.
G Kao specifikator g, ali se koriste E i F.
o Parametar se tretira kao cijeli broj i ispisuje se kao oktalni broj.
s Parametar se tretira kao niz znakova i ispisuje se.
u Parametar se tretira kao cijeli broj i ispisuje se kao decimalni broj bez predznaka.
x Parametar se tretira kao cijeli broj i ispisuje se kao heksadecimalni broj (s malim slovima).
X Parametar se tretira kao cijeli broj i ispisuje se kao heksadecimalni broj (s velikim slovima).

Pažnja: Specifikator c ignorira popunjavanje i širinu.

Upozorenje: Pokušaj korištenja kombinacije nizova znakova s specifikacijom širine i skupova znakova koji očekuju više od jednog bajta po znaku dovodi do nepredvidivih rezultata.

Varijable se pretvaraju u odgovarajući tip za specifikator:

Tip Specifikator
Niz znakova s
Integer d, u, c, o, x, X, b
Float g, G, e, E, f, F

Ulaz STR1..STR#

Ulaz ili više ulaza definiraju odgovarajuću vrijednost za zamjenu u navedenom nizu znakova na ulazu FORMAT.

Izlaz

Vraća generirani niz znakova.