ev-nghttp2-print-name-value-001¶
| 字段 | 值 |
|---|---|
| 项目 | nghttp2/nghttp2 |
| 固定 commit | 85e300c79fb6 |
| 路径 | src/app_helper.cc |
| 行段 | L149-L153 |
| 特性 | std::print / std::println |
| 许可证 | MIT |
| 代码来源 | 项目源码 |
| 级别 | manual |
| 审核 | zyuhao7 @ 2026-10-29 |
| 测试代码 | 否 |
| 发现方式 | regex |
用法¶
把 HTTP/2 名称值对格式化输出到 FILE*,用 {} 占位符和 ANSI 转义
为什么典型¶
std::println 的 FILE* 重载直接把诊断输出写到指定流,避免先构造字符串;格式串在编译期检查。
摘录¶
void print_nv(nghttp2_nv *nv) {
std::println(outfile, "{}{}{}: {}", ansi_esc("\033[1;34m"),
as_string_view(nv->name, nv->namelen), ansi_escend(),
as_string_view(nv->value, nv->valuelen));
}
备注¶
生产路径:nghttp2 命令行工具的头部打印。