自制Base64编码解码器

做wireshark的http实验的时候,看到有个基于Base64编码的账号和密码,想到我啥都没做过,而且看着做这个不难,于是就自己用c++写了个简易版本。

没有系统学过c++,导致我对两个string的连接很迷,本来后面想用c的char*,后来才发现是我在定义主string的给它赋予了容量和初值string code(n,0),我以为副string的连接是从主string的第一个即code[0]开始,但其实是从主string最后的一个字符即code.size()连,所以就导致,前面一大堆无用的空格,加深了我对string连接的印象,还是可以的,我试了一下,一般的编码解码应该是能做到的,写了大概5个小时,收获还是有,就是太慢了。。

#include <algorithm>
#include <iostream>
#include <string>
#include <unordered_map>
using namespace std;
class Solution
{
   
private:
    const string base64_table = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
    unordered_map<char, int> base64;
    void initial_map()
    {
   
        int i;
        for (i = 0; base64_table[i] != '\0'; i++)
        {
   
            base64[base64_table[i]] = i;
        }
    }
    string jinZhi(int n, string &str) //数字转str.size()位 01字符串
    {
   
        int i;
        for (i = 0; i < (int)str.size(<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

thoroughly strive

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值