C++字符串格式化
源代码:
/********************************************************
* 函数名称: format
* 函数功能: 全局功能函数, 格式化拼接字符串
* 输入参数: format 拼接格式
* 输出参数: 无
* 返 回 值: std::string 格式化后的字符串
********************************************************/
std::string format(const char* fmt, ...) {
va_list ap;
va_start(ap, fmt);
std::string str_ret = "";
std::string str_fmt = fmt;
auto size = str_fmt.length();
for (int i = 0; i < size; ++i) {
char c = str_fmt.at(i);
if (c != '%') {
//如果不是格式化字符,直接添加到结果字符串
str_ret.push_back(c);
continue;
}
c = str_fmt.at(++i);
switch (c) {
//越过当前参数%,移到下一个参数
case 'e': {