2021-10-09,字符前面补齐0

本文探讨了C++中五种不同的字符补零方法,并通过性能测试比较了它们的效率。在循环执行1000000次的情况下,测试结果显示way5表现最优,仅用时131ms。
摘要由CSDN通过智能技术生成

        几种常见的字符前面补齐0的方法,并且测试该方法的效率。

        将该方法循环执行1000000次,使用系统函数总的获取执行时间,源代码如下,测试结果如下。

        源代码:

#include <iostream>
#include <string>
#include <algorithm>

#include <sys/time.h>

using namespace std;

/*******************************
 * string fill test function.
 * done it with 5 ways.
 *
 * 1, 统计当前字符,然后逐个添加字符
 * 2, 总长度确定,定义对应个0,后替换
 * 3, 总长度确定,相加后删除对应字符
 * 4, 判断字符长度,选择通道在前面添加
 * 5, 使用snprintf函数将整型补齐打印为字符
 ******************************/

/**
 * @brief main
 * @return
 *
 * 补齐8个字符
 */

#define STRLEN 8

struct timeval t_begin, t_end;
float t_use;
#define T_TIMES 1000000

int main()
{
    cout << "beginning resolve!" << endl;

    int num = 110, tmp_num;
    string tmp, tmp_str;

    //way1
    gettimeofday(&t_begin, nullptr);
    for (int i = 0; i < T_TIMES; i++)
    {
        tmp
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值