开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 457|回复: 16
收起左侧

[C/C++] 一段c++代码 请求大佬 转成火山代码

[复制链接]
结帖率:85% (29/34)
发表于 2024-2-27 18:37:50 | 显示全部楼层 |阅读模式   湖南省衡阳市
11精币
下面这段代码是c++的  据说火山pc是跟vs使用的同一个编译器  某大佬说 c++代码转火山较易  我从易语言转到火山来的 但是这段实在没技术翻译  请求大佬们 翻译成火山代码
内容是两个算法  下面是两个算法 跪求大佬帮助!
string UserLogin_Up(string varIn) {
                        int mKey[] = { 18,73,45,87,219,65,86,3,227,202,122,42,3,62,244,98,121,150,155,145,160,225,91,163 };
                        int mKeyLen = 24;
                        int varInLen = varIn.length();
                        string retVal;
                        for (int i = 0; i < varInLen; i++)
                        {
                            int mCode = varIn[i];
                            mCode = (mCode  - 198) ^ mKey[i % mKeyLen];
                            if (mCode < 0)
                            {
                                mCode = -mCode;
                                retVal = retVal + "-";
                            }
                            char temp[32];
                            ltoa(mCode, temp, 16);
                            retVal = retVal + temp + ",";
                        }
                        return base64_encode(retVal.c_str(), retVal.length());
                    }




string UserLogin_Down(string varIn)
        {
                        int mKey[] = { 160,229,238,42,181,60,230,211,66,185,135,10,132,111,36,52,197 };
                        int mKeyLen = 17;
                        varIn = base64_decode(varIn.c_str(), varIn.length());
                        std::vector<string> v = split(varIn, ",");
                        string retVal;
                        for (std::vector<string>::size_type i = 0; i != v.size(); ++i)
                        {
                            int d;
                            if (v[i][0] == '-')
                            {
                                sscanf(v[i].substr(1).c_str(), "%x", &d);
                                d = -d;
                            }
                            else
                            {
                                sscanf(v[i].c_str(), "%x", &d);
                            }
                            retVal = retVal + (char)((d ^ mKey[i % mKeyLen]) -94);
                        }
                        return retVal;
                    }


回答提醒:如果本帖被关闭无法回复,您有更好的答案帮助楼主解决,请发表至 源码区 可获得加分喔。
友情提醒:本版被采纳的主题可在 申请荣誉值 页面申请荣誉值,获得 1点 荣誉值,荣誉值可兑换荣誉会员、终身vip用户组。
快捷通道:申请荣誉值无答案申请取消悬赏投诉有答案未采纳为最佳
结帖率:100% (1/1)

签到天数: 27 天

发表于 2024-2-27 18:58:12 | 显示全部楼层   浙江省宁波市
直接嵌入C++代码不就行了,还用翻译
回复

使用道具 举报

结帖率:0% (0/1)

签到天数: 10 天

发表于 2024-2-27 19:13:14 高大上手机用户 | 显示全部楼层   广东省广州市
直接内嵌完事
回复

使用道具 举报

结帖率:85% (29/34)

签到天数: 13 天

 楼主| 发表于 2024-2-27 19:15:04 | 显示全部楼层   湖南省衡阳市
无量科技 发表于 2024-2-27 18:58
直接嵌入C++代码不就行了,还用翻译

怎么类嵌
回复

使用道具 举报

结帖率:100% (1/1)

签到天数: 27 天

发表于 2024-2-27 19:16:42 | 显示全部楼层   浙江省宁波市

看官网文档,
回复

使用道具 举报

结帖率:85% (29/34)

签到天数: 13 天

 楼主| 发表于 2024-2-27 20:30:24 | 显示全部楼层   湖南省衡阳市

大佬 帮整下呗  
回复

使用道具 举报

结帖率:91% (10/11)

签到天数: 11 天

发表于 2024-2-27 20:36:27 | 显示全部楼层   内蒙古自治区包头市
加密关键也就这一句   mCode = (mCode  - 198) ^ mKey[i % mKeyLen]; 自己稍微搜下c++基础都能懂什么意思了..

补充内容 (2024-2-27 20:37):
^是异或
回复

使用道具 举报

结帖率:85% (29/34)

签到天数: 13 天

 楼主| 发表于 2024-2-27 20:41:52 | 显示全部楼层   湖南省衡阳市
z3201 发表于 2024-2-27 20:36
加密关键也就这一句   mCode = (mCode  - 198) ^ mKey; 自己稍微搜下c++基础都能懂什么意思了..

补充内容  ...

这整个算法 封装到火山 方法名 实在看不懂怎么封装 看教程 也是教了 控制台怎么内嵌 mfc窗口也没教
回复

使用道具 举报

结帖率:91% (10/11)

签到天数: 11 天

发表于 2024-2-27 20:48:11 | 显示全部楼层   内蒙古自治区包头市
fanren9527 发表于 2024-2-27 20:41
这整个算法 封装到火山 方法名 实在看不懂怎么封装 看教程 也是教了 控制台怎么内嵌 mfc窗口也没教  ...

翻译成火山代码就是..
回复

使用道具 举报

结帖率:91% (10/11)

签到天数: 11 天

发表于 2024-2-27 22:35:06 | 显示全部楼层   内蒙古自治区包头市
c++ (char)50 是什么意思

补充内容 (2024-2-27 22:38):
复制错了..
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 诚聘英才| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 800073686,邮箱:800073686@b.qq.com
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表