
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 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.
Liczba całkowita zakończona znakiem dolara $, która określa numer wejścia STR#, które ma być użyte do konwersji.
| 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. |
Liczba całkowita określająca, ile znaków (minimum) powinno mieć wyniki konwersji.
Znaczenie kropki . poprzedzonej liczbą całkowitą zależy od specyfikatora:
Uwaga: Jeśli kropka jest podana bez wyraźnej wartości dla precyzji, przyjmuje się 0.
| 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 lub wiele wejść definiuje odpowiednią wartość do zastąpienia w podanym łańcuchu znaków na wejściu FORMAT.
Zwraca wygenerowany łańcuch znaków.