بلوک عملکرد STR_FORMAT

این بلوک عملکرد یک رشته با فرمت خاص را برمی‌گرداند.

این بلوک عملکرد معادل تابع sprintf در C++ است.

توجه: این بلوک عملکرد می‌تواند بیش از دو ورودی داشته باشد. شما می‌توانید با کلیک راست روی بلوک عملکرد، یک ورودی دیگر اضافه کنید.

ورودی فرمت

این ورودی فرمت را تعریف می‌کند. این فرمت شامل یک یا چند دستورالعمل است: کاراکترهای عادی (به جز %) که به صورت مستقیم در نتیجه کپی می‌شوند و دستورالعمل‌های تبدیل که هر کدام پارامترهای خود را دریافت می‌کنند.

در اینجا دستورالعمل تبدیل از پروتوتایپ زیر پیروی می‌کند:

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

یک عدد صحیح دنباله‌دار با یک علامت دلار $ که شماره ورودی STR# را نشان می‌دهد که برای تبدیل استفاده شود.

Flags
Flag توضیحات
- چپ‌چین شده در عرض فیلد مشخص شده؛ راست‌چین شدن استاندارد است
+ اعداد مثبت با یک علامت پلاس +؛ به طور پیش‌فرض فقط اعداد منفی با علامت منفی نمایش داده می‌شوند
(فضا) نتیجه را با فضا پر می‌کند. این استاندارد است.
0 چپ را با صفر پر می‌کند. با اسپسیفایر s می‌توانید این کار را از راست نیز انجام دهید.
'(کاراکتر) نتیجه را با کاراکتر مشخص شده پر می‌کند.
Weite

یک عدد صحیح که نشان می‌دهد چقدر کاراکتر (حداقل) نتیجه تبدیل باید داشته باشد.

Präzision

معنی یک نقطه . دنباله‌دار با یک عدد صحیح به اسپسیفایر بستگی دارد:

  • برای اسپسیفایرهای e, E, f و F: این تعداد اعشار را نشان می‌دهد که پس از علامت دهی اعشاری نمایش داده شود (پیش‌فرض 6 است).
  • برای اسپسیفایرهای g و G: تعداد اعشار مهم حداکثر که باید نمایش داده شوند.
  • برای اسپسیفایر s: مانند یک نقطه برش، که تعداد کاراکترهای حداکثر در رشته را نشان می‌دهد.

توجه: اگر نقطه بدون مقدار مشخصی برای دقت ذکر شود، 0 فرض می‌شود.

Spezifizierer
Spezifizierer توضیحات
% یک علامت درصد. پارامتری نیاز نیست.
b پارامتر به عنوان یک عدد صحیح در نظر گرفته می‌شود و به صورت دودویی نمایش داده می‌شود.
c پارامتر به عنوان یک عدد صحیح در نظر گرفته می‌شود و به عنوان یک کاراکتر از مجموعه کاراکترهای ASCII نمایش داده می‌شود.
d پارامتر به عنوان یک عدد صحیح در نظر گرفته می‌شود و به صورت عدد ده‌دهی (با علامت) نمایش داده می‌شود.
e پارامتر به عنوان یک عدد در نوتاسیون علمی (مثلا 1.2e+2) در نظر گرفته می‌شود. مشخص کردن دقت نشان‌دهنده تعداد کاراکترهای پس از نقطه اعشاری است.
E مانند اسپسیفایر e، اما یک حرف بزرگ (مثلا 1.2E+2) می‌نویسد.
f پارامتر به عنوان یک عدد اعشاری در نظر گرفته می‌شود و به صورت عدد اعشاری نمایش داده می‌شود (بسته به محلی).
F پارامتر به عنوان یک عدد اعشاری در نظر گرفته می‌شود و به صورت عدد اعشاری (مستقل از محلی) نمایش داده می‌شود.
g فرمت عمومی.
P دقت باشد، اگر صفر نباشد، 6 اگر دقت مشخص نشده باشد یا 1 اگر دقت صفر باشد. سپس، اگر یک تبدیل با E یک نماینده X داشته باشد:
اگر P > X ≥ -4 باشد، تبدیل با اسپسیفایر f و دقت P - (X + 1) انجام می‌شود. در غیر این صورت مانند اسپسیفایر e و دقت P - 1.
G مانند اسپسیفایر g، اما E و F استفاده می‌شوند.
o پارامتر به عنوان یک عدد صحیح در نظر گرفته می‌شود و به صورت عدد هشت‌دهی نمایش داده می‌شود.
s پارامتر به عنوان یک رشته کاراکتر در نظر گرفته می‌شود و نمایش داده می‌شود.
u پارامتر به عنوان یک عدد صحیح در نظر گرفته می‌شود و به صورت عدد ده‌دهی بدون علامت نمایش داده می‌شود.
x پارامتر به عنوان یک عدد صحیح در نظر گرفته می‌شود و به صورت عدد شانزده‌دهی (با حروف کوچک) نمایش داده می‌شود.
X پارامتر به عنوان یک عدد صحیح در نظر گرفته می‌شود و به صورت عدد شانزده‌دهی (با حروف بزرگ) نمایش داده می‌شود.

هشدار: اسپسیفایر c پر کردن و عرض را نادیده می‌گیرد.

هشدار: تلاش برای استفاده از ترکیب رشته‌های با مشخص کردن عرض و مجموعه‌های کاراکترهایی که بیش از یک بایت در هر کاراکتر انتظار دارند، به نتایج پیش‌بینی‌ناپذیر می‌انجامد.

متغیرها به نوعی تبدیل می‌شوند که برای اسپسیفایر مناسب است:

نوع Spezifizierer
رشته کاراکتر s
Integer d, u, c, o, x, X, b
Float g, G, e, E, f, F

ورودی STR1..STR#

این ورودی یا ورودی‌های متعدد مقدار جایگزین مربوطه را برای رشته مشخص شده در ورودی FORMAT تعریف می‌کنند.

خروجی

رشته تولید شده را برمی‌گرداند.