返回格式化字符串(類似于C語言的sprintf() 函數(shù))。
StringFormat ( "格式控制字符串", 變量1 [, ... 變量32] )
參數(shù)
格式控制字符串 | 要使用的格式和標(biāo)志符(請查看下面的注意部分). |
變量1...變量32 | 最多可使用32個變量,與“格式控制字符串”的標(biāo)志符一一對應(yīng)輸出。 |
返回值
返回根據(jù)“格式控制字符串”參數(shù)中定義的“變量格式”格式化后的字符串。
注意
為防止緩沖溢出,每個“變量”最多只能含有 65535 個字符。類型 | 變量類型 | 輸出格式 |
d, i | 整數(shù) | 帶符號的十進(jìn)制整數(shù)。 |
o | 整數(shù) | 無符號的八進(jìn)制整數(shù)。 |
u | 整數(shù) | 無符號的十進(jìn)制整數(shù)。 |
x | 整數(shù) | 無符號的十六進(jìn)制整數(shù),使用 "abcdef" 表示。 |
X | 整數(shù) | 無符號的十六進(jìn)制整數(shù),使用 "ABCDEF" 表示 |
e | 浮點(diǎn)數(shù) | 帶符號的數(shù)值,形式為 [ - ]d.dddd e [符號]ddd,其中 d 是一位十進(jìn)制數(shù),dddd 是一位或多位的十進(jìn)制數(shù),ddd 則(正好)是三位的十進(jìn)制數(shù),符號 則是 + 或 -。 |
E | 浮點(diǎn)數(shù) | 同上,但用大寫 E 而不是小寫 e(都被稱為科學(xué)表示法)。 |
f | 浮點(diǎn)數(shù) | 帶符號的數(shù)值,形式為 [ - ]dddd.dddd,其中 dddd 是一位或多位的十進(jìn)制數(shù)。小數(shù)點(diǎn)前面的位數(shù)由該數(shù)的大小決定,而小數(shù)點(diǎn)后面的位數(shù)則由精度決定。 |
g | 浮點(diǎn)數(shù) | 帶符號的數(shù)值,以 f 或 e 的格式輸出,兩者在給定的數(shù)值和精度下都會更緊湊一些。當(dāng)指數(shù)小于 -4 或大于等于精度則使用 e 的格式;數(shù)值后面的零將被截斷,僅當(dāng)小數(shù)點(diǎn)后有一個或更多位數(shù)時才保留小數(shù)點(diǎn)。 |
G | 浮點(diǎn)數(shù) | 同上,但用大寫 E 而不是小寫 e |
s | 字符串 | 字符串。 |
標(biāo)志 | 意義 | 默認(rèn) |
- | 在給定的寬度內(nèi)左對齊。 | 右對齊 |
+ | 若輸出值是某種帶符號類型則對輸出值前綴一個符號(+ 或 -)。 | 僅當(dāng)帶符號數(shù)值是負(fù)數(shù)時才會出現(xiàn)符號(-)。 |
0 | 若寬度帶有前綴 0 則補(bǔ)零(直到達(dá)到最小寬度為止)。若 0 和 - 同時出現(xiàn)則 0 將被忽略。若 0 以整數(shù)格式(i、u、x、X、o、d)指定則 0 將被忽略。 | 不補(bǔ)零。 |
空格 | 若輸出值是帶符號的并且是正數(shù)則對輸出值前綴一個空格;若 空格 和 + 標(biāo)志同時出現(xiàn)則 空格 將被忽略。 | 無空格。 |
# | 結(jié)合 o、x 或 X 格式使用時,# 標(biāo)志表示要對所有非零輸出值各自前綴一個 0、0x 或 0X。 | 無空格。 |
# | 結(jié)合 e、E 或 f 格式使用時,# 標(biāo)志表示要強(qiáng)制添加小數(shù)點(diǎn)到輸出值中。 | 僅當(dāng)小數(shù)點(diǎn)后有數(shù)時小數(shù)點(diǎn)才會出現(xiàn)。 |
# | 結(jié)合 g 或 G 格式使用時,# 標(biāo)志表示要強(qiáng)制添加小數(shù)點(diǎn)到輸出值中并阻止數(shù)值后面的零被截斷。 若 c、d、i、u 或 s 標(biāo)志也出現(xiàn)則此標(biāo)志將被忽略。 |
僅當(dāng)小數(shù)點(diǎn)后有數(shù)時小數(shù)點(diǎn)才會出現(xiàn)。數(shù)值后面的零將被截斷 |
類型 | 意義 | 默認(rèn) |
d, i, u, o, x, X | 精度決定了要輸出的數(shù)值的最小位數(shù)。若位數(shù)小于精度則輸出值將被補(bǔ)零(左邊開始)。當(dāng)輸出值的位數(shù)大于精度時則該數(shù)值并不會被截斷。 | 默認(rèn)精度為 1。 |
e, E | 精度決定了要輸出的數(shù)值的小數(shù)點(diǎn)后的位數(shù)。最后一位輸出數(shù)將執(zhí)行約舍(四舍五入)。 | 默認(rèn)精度為 6;若精度為0或者是小數(shù)點(diǎn)(.)出現(xiàn)而無任何數(shù)字在后則小數(shù)將不被輸出。 |
f | 精度決定了要輸出的數(shù)值的小數(shù)點(diǎn)后的位數(shù)。小數(shù)點(diǎn)前必須至少有一位數(shù)。該數(shù)值將被約舍。 | 默認(rèn)精度為 6;若精度為0或者是小數(shù)點(diǎn)(.)出現(xiàn)而無任何數(shù)字在后則小數(shù)將不被輸出。 |
g, G | 精度決定了要輸出的數(shù)值的最大有效數(shù)字。 | 輸出六位有效數(shù)字,數(shù)值后面的所有零將被截斷。 |
s | 精度決定了要輸出的數(shù)值的最大有效數(shù)字。超出精度的字符將不被輸出。 | 字符序列將被輸出直到遇到空字符為止。 |
相關(guān)
無
示例
$string = "string"
$float = 12.3
$int = 345
$s =StringFormat ( "var1=%s var2=%.2f var3=%d" ,$string, $float, $int )
msgbox(0, "結(jié)果", $s)
; 將輸出 "var1=string var2=12.30 var3=345"
; 注意,之所以會輸出 12.30 是因為格式控制字符串中的 %.2f 表示強(qiáng)制保留2位小數(shù)