在C 中使用右對齊格式化輸出字串
處理包含資料(例如座標)的文字檔案時,需要對齊列中的項目經常出現正確格式化的問題。在 C 中,輸出字串的操作對於實現這種對齊至關重要。本文解決了輸出字串右對齊的問題,提供了使用標準 C 技術的解決方案。
為了處理輸入文字文件,使用 line.split() 函數將每一行分隔為其 x, y和 z 座標。處理後,目標是將座標寫回 txt 文件,並右對齊以匹配輸入文件的格式。
最初,使用字串連接建構新行:
<code class="cpp">line_new = words[0] + ' ' + words[1] + ' ' + words[2];</code>
但是,這種方法無法提供所需的對齊方式。為了實現這種對齊,我們可以使用字串格式化技術。
使用 C 字串格式化
C 提供了多種格式化字串的方法,包括現代的 str.format 語法和舊的 printf 樣式格式。
使用 str.format
str.format 語法允許靈活的字串格式,從而可以輕鬆對齊和指定欄位寬度。若要右對齊每個座標,可以使用下列語法:
<code class="cpp">line_new = '{:>12} {:>12} {:>12}'.format(word[0], word[1], word[2]);</code>
此語法指定每個座標應右對齊,且欄位寬度為 12 個字元。
使用 printf 樣式格式
對於不支援 str.format 的舊版 C,可以使用 printf 樣式格式。這種方法較不靈活,但仍允許欄位寬度規格:
<code class="cpp">line_new = '%12s %12s %12s' % (word[0], word[1], word[2]);</code>
此語法也為每個座標指定 12 個字元的欄位寬度。
利用這些字串格式化技術,它寫入 txt 檔案時右對齊座標變得簡單。
以上是在 C 中格式化時如何右對齊輸出字串?的詳細內容。更多資訊請關注PHP中文網其他相關文章!