Blok funkcji STR_FORMAT

Blok funkcji STR_FORMAT zwraca formatowany łańcuch znaków.

Ten blok funkcji odpowiada funkcji sprintf w C++.

Uwaga: Ten blok funkcji może mieć więcej niż dwa wejścia. Możesz kliknąć prawym przyciskiem myszy na bloku funkcji, aby dodać kolejne wejście.

Wejście Format

Wejście definiuje formatowanie. Składa się z żadnych lub wielu instrukcji: normalne znaki (oprócz %), które są bezpośrednio kopiowane do wyniku i instrukcje konwersji, każda z własnymi parametrami.

Instrukcja konwersji ma następujący prototyp:

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

Liczba całkowita zakończona znakiem dolara $, która określa numer wejścia STR#, które ma być użyte do konwersji.

Flags
Flaga Opis
- Wyrównanie do lewej w podanej szerokości pola; domyślnie wyrównanie do prawej
+ Liczby dodatnie z znakiem plus +; domyślnie tylko liczby ujemne mają znaki ujemne
(Spacja) Wypełnia wynik spacjami. To jest domyślne.
0 Wypełnia zerami po lewej stronie. Może to również wypełnić zerami po prawej stronie z specyfikatorem s.
'(Znak) Wypełnia wynik podanym znakiem.
Weite

Liczba całkowita określająca, ile znaków (minimum) powinno mieć wyniki konwersji.

Präzision

Znaczenie kropki . poprzedzonej liczbą całkowitą zależy od specyfikatora:

  • Dla specyfikatorów e, E, f i F: Określa liczbę cyfr po przecinku, które mają być wyświetlane (domyślnie jest to 6).
  • Dla specyfikatorów g i G: Maksymalna liczba cyfr znaczącej do wyświetlenia.
  • Dla specyfikatora s: Zachowuje się jak punkt cięcia, który określa maksymalną liczbę znaków w łańcuchu znaków.

Uwaga: Jeśli kropka jest podana bez wyraźnej wartości dla precyzji, przyjmuje się 0.

Spezifizierer
Spezifikator Opis
% Znak procentowy. Nie wymagany parametr.
b Parametr jest traktowany jako liczba całkowita i wyświetlany jako liczba binarna.
c Parametr jest traktowany jako liczba całkowita i wyświetlany jako znak z zestawu ASCII.
d Parametr jest traktowany jako liczba całkowita i wyświetlany jako (znakowana) liczba dziesiętna.
e Parametr jest traktowany jako liczba w notacji naukowej (np. 1,2e+2). Podanie precyzji oznacza liczbę znaków po kropce dziesiętnej.
E Jak specyfikator e, ale pisze dużą literę (np. 1,2E+2).
f Parametr jest traktowany jako liczba zmiennoprzecinkowa i wyświetlany jako liczba zmiennoprzecinkowa (zależnie od ustawień regionalnych).
F Parametr jest traktowany jako liczba zmiennoprzecinkowa i wyświetlany jako liczba zmiennoprzecinkowa (niezależnie od ustawień regionalnych).
g Ogólny format.
Niech P będzie precyzją, jeśli nie jest zerem, 6 jeśli precyzja nie jest podana lub 1 jeśli precyzja wynosi zero. Wtedy, jeśli konwersja za pomocą E miałaby wykładnik X:
Jeśli P > X ≥ -4, konwersja odbywa się z specyfikatorem f i precyzją P - (X + 1). W przeciwnym razie jak z specyfikatorem e i precyzją P - 1.
G Jak specyfikator g, ale używa E i F.
o Parametr jest traktowany jako liczba całkowita i wyświetlany jako liczba ósemkowa.
s Parametr jest traktowany jako łańcuch znaków i wyświetlany.
u Parametr jest traktowany jako liczba całkowita i wyświetlany jako liczba dziesiętna bez znaku.
x Parametr jest traktowany jako liczba całkowita i wyświetlany jako liczba szesnastkowa (z małymi literami).
X Parametr jest traktowany jako liczba całkowita i wyświetlany jako liczba szesnastkowa (z dużymi literami).

Uwaga: Specyfikator c ignoruje wypełnienie i szerokość.

Ostrzeżenie: Próba użycia kombinacji łańcuchów znakowych z określeniem szerokości ze znakami, które oczekują więcej niż jednego bajta na znak, prowadzi do nieprzewidywalnych wyników.

Zmienne są przekształcane w typ pasujący do specyfikatora:

Typ Spezifikator
Łańcuch znaków s
Integer d, u, c, o, x, X, b
Float g, G, e, E, f, F

Wejście STR1..STR#

Wejście lub wiele wejść definiuje odpowiednią wartość do zastąpienia w podanym łańcuchu znaków na wejściu FORMAT.

Wyjście

Zwraca wygenerowany łańcuch znaków.