您好,登錄后才能下訂單哦!
本篇內容主要講解“C++ sprintf格式化的解決方法”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“C++ sprintf格式化的解決方法”吧!
今天我們將會為大家詳細介紹一下有關C++ sprintf格式化的相關應用方法。希望初學者們可以根據本文介紹的內容充分掌握這方面的知識,并從中體驗這款語言給我們都帶來了哪些不一樣的應用方式。
名稱:
printf, sprintf - 轉換成指定格式的輸出結果. void printf( string format, ... ); string sprintf( string format, ... );
語法:
無返回值 printf( 字符串 format, ... );
字符串 sprintf( 字符串 format, ... );
用法: 以下為 LPC (s)printf() 的格式用法, Lynscar (Sean A Reith) 加入了一些擴充用法.
目前的版本支援以下的修改格式 (modifier):
" " 在正整數之前放入一個空格.
"+" 在正整數之前放入一個 + 號.
"-" 對齊欄位 (field) 的左邊. 請注意: 標準的 (s)printf() 預設是對齊右邊, 但是對主要以字符串為基礎的語言來說, 這樣非常奇怪. 在此為了保留與 C 的相容性而保留此一特性.
"|" 對齊欄位的中心.
"=" 如果字符串長度比欄位大小還長, 使用縱列模式 (column mode). 在此C++ sprintf格式化只對字符串有效, 其他的類型一律無效. 縱列模式中, 字符串中的字會自動換行 (wrap).
"#" 表格模式. 在欄位之內, 字符串中的每一個字會換一行 (即每個字后面加上 \n). 只對字符串有效.
n 以整數指定欄位大小. 用 * 代替整數則使用參數指定欄位大小. 如果 n 是 0, 則此欄除了數據以外就以空值 (zeros) 填滿. 如果 n 不是 0, 此欄除了數據以外將放入空白字符 (space) 或是另外指定的字符.
"."n 指定輸出的精確度為 n. 普通的字符串在此之后則被截斷 (如果精確度 n 大于欄位長度, 則欄位長度變為精確度 n ). 表格則使用精確度指定縱列的總數 (如果不指定精確度, 則表格會自動計算最適合的輸出結果). 精確度對于其他的數據類型無效.
":"n n 指定 fs 和精確度, 如果 n 是 0, 則原來用以填滿欄位的空格就代以空值 (zeros).
"@" 參數為一個數組. 其他除了 @ 以外, 對應的格式數據亦將用于數組中的每一個元素.
"'X'" 單引號 (') 中的字符用以填滿整個欄位中, 數據以外的空間. (預設值是空白字符) (如果同時在欄位大小之前指定一個空值, 又指定 'X' 字符串填滿欄位, 則以后者為準) 注意: 如果欲填滿的字符串中要使用單引號 (') 或是雙引號 ("), 您必須使用 \' 或 \" 以避開編譯器的檢查.
以下是C++ sprintf格式化中指定類型的格式:
% 此處不指定任何參數, 而以 % 輸出. 忽略所有的修改格式 (modifier).
O 參數為 LPC 數據類型.
s 參數為字符串.
d, i 參數為整數, 并以十進位印出.
c 參數為整數, 并以字符印出.
o 參數為整數, 并以八進位印出.
x 參數為整數, 并以十六進位印出.
X 參數為整數, 并以十六進位印出 (A 到 F 以大寫印出).
f 浮點數.
返回: sprintf() 返回指定格式的字符串.
到此,相信大家對“C++ sprintf格式化的解決方法”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。