溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C++標準庫format函數(shù)入門

發(fā)布時間:2024-10-10 18:58:34 來源:億速云 閱讀:78 作者:小樊 欄目:編程語言

std::format 是 C++20 中引入的一個新特性,它提供了一種類型安全且易于使用的方式來格式化字符串。這個函數(shù)類似于 Python 的 str.format 或 C# 的 string.Format,但它是 C++ 標準庫的一部分。

基本用法

std::format 的基本語法如下:

std::string formatted_string = std::format("{0} {1} {2}", arg1, arg2, arg3);

在這個例子中,{0}、{1}{2} 是占位符,它們將被 arg1arg2arg3 的值替換。

參數(shù)類型

std::format 支持多種類型的參數(shù),包括:

  • 基本數(shù)據(jù)類型(如 int、floatdouble、char、bool
  • 字符串字面量(std::string
  • 指針類型(包括 int*float* 等)
  • 引用類型(包括 int&、float& 等)
  • C 風格字符串(const char*
  • 其他類型(通過自定義格式說明符處理)

格式說明符

std::format 支持一些基本的格式說明符,如:

  • %dd:十進制整數(shù)
  • %ff:浮點數(shù)(默認精度為 6 位小數(shù))
  • %ss:字符串
  • %cc:字符
  • %oo:八進制整數(shù)
  • %xx:十六進制整數(shù)(小寫)
  • %XX:十六進制整數(shù)(大寫)
  • %pp:指針值(以十六進制表示)

你還可以使用 %n 來插入換行符。

示例

下面是一些使用 std::format 的示例:

#include <iostream>
#include <format>
#include <string>

int main() {
    int a = 123;
    float b = 456.789f;
    std::string s = "hello";

    std::string formatted = std::format("Integer: %d, Float: %.2f, String: %s", a, b, s);
    std::cout << formatted << std::endl;

    return 0;
}

在這個例子中,%.2f 指定了浮點數(shù) b 的精度為 2 位小數(shù)。輸出將是:

Integer: 123, Float: 456.79, String: hello

注意:由于 std::format 返回的是 std::string 類型,因此你可以像處理任何其他字符串一樣處理它。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

c++
AI