2 onolay onOlay 于 2016.03.23 16:09 提问

请教如何将如下VC++代码转换成C#代码,谢谢
c#
int nKeyLen = strKey.GetLength();
if (nKeyLen == 0)
    strKey = _T("xxsswww");
srand((unsigned)time(NULL));
int nRange = 256;
int nOffset = (rand() % nRange);
CString strDest = _T("");
strDest.Format(_T("%1.2x"), nOffset);

int nSrcAsc = 0;
int nKeyPos = 0;
for (int nSrcPos = 0; nSrcPos < strSrc.GetLength(); nSrcPos++)
{
    int n = strSrc[nSrcPos];
    nSrcAsc = (strSrc[nSrcPos] + nOffset) % 255;
    if (nKeyPos < nKeyLen - 1)
        nKeyPos += 1;
    else
        nKeyPos = 1;
    nSrcAsc = nSrcAsc ^ strKey[nKeyPos];
    CString strTemp = _T("");
    strTemp.Format(_T("%1.2x"), nSrcAsc);
    strDest += strTemp;
    nOffset = nSrcAsc;
}
return strDest;

2个回答

caozhy
caozhy   Ds   Rxr 2016.03.24 07:00
已采纳
 int nKeyLen = strKey.Length;
if (nKeyLen == 0)
    strKey = "xxsswww;
Random rnd = new Random();
int nRange = 256;
int nOffset = (rnd.NextInt() % nRange);
string strDest = string.Format("{0:X2}", nOffset);
int nSrcAsc = 0;
int nKeyPos = 0;
for (int nSrcPos = 0; nSrcPos < strSrc.Length; nSrcPos++)
{
    int n = strSrc[nSrcPos];
    nSrcAsc = (strSrc[nSrcPos] + nOffset) % 255;
    if (nKeyPos < nKeyLen - 1)
        nKeyPos += 1;
    else
        nKeyPos = 1;
    nSrcAsc = nSrcAsc ^ strKey[nKeyPos];
    string strTemp = "";
    strTemp = string.Format("{0:X2}", nSrcAsc);
    strDest += strTemp;
    nOffset = nSrcAsc;
}
return strDest;
caozhy
caozhy   Ds   Rxr 2016.03.24 07:01

nSrcAsc = (strSrc[nSrcPos] + nOffset) % 255;
看上去应该 %256 才对,你检查下。

onOlay
onOlay int nOffset = (rnd.NextInt() % nRange);这一句报错了 error CS1061: “System.Random”不包含“NextInt”的定义,并且找不到可接受类型为“System.Random”的第一个参数的扩展方法“NextInt”(是否缺少 using 指令或程序集引用?) 是否缺少一个引用?? 请问是哪一个?
2 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
怎样把VC++代码转换成VB代码
怎样把VC++代码转换成VB代码 VB技术很实用的源码本人精心收集的VB源码,绝对实用,有问题联系QQ:353502250
vc转C# 互转
Vb转C# C#转VB 网址 http://www.developerfusion.com/tools/convert/csharp-to-vb/
c++转换成c#代码
将c++代码转换成c#代码,内附帮助文档
VB代码转为VC代码
VB代码转为VC代码,只要把VB代码复制到工具里面,点击转换,即可转换成VC的代码,很实用。
C++代码转换成C#工具
C++ to C# Converter 破解版(英文界面) 可以批量转换
vc代码代码代码代码
vc代码代码代码代码代码代码代码代码代码代码代码代码代码
在线工具--把C#代码转换成VB.NET代码
在线工具--把C#代码转换成VB.NET代码 有不少朋友在网上找资料时经常会遇到想要VB.NET的代码,但却只有C#的代码。 自己改又改不大来! 本人不经意发现有一个在线工具,使用方便。 支持:C#---> VB.NET       VB.NET--->C# 地址(C#---> VB.NET): http://www.developerfusion.c
problem 1335 请教的 思路代码如下
突然的任务Submit: 269   Accepted:86Time Limit: 1000MS  Memory Limit: 65536K<br />Description<br />一天Wangkun晚上回寝室时,突然接到dalong通知的任务,wangkun以为这个任务不难便欣然答应了,于是开始做这个艰巨的任务。<br />任务是这样的,dalong给了一个for循环,叫wangkun计算出这个循环会做多少次。<br />For( I = a ; I ! = b ; I + = c) ; <br />
小波变换 vc代码 小波变换 vc代码
小波变换 vc代码 小波变换 vc代码 小波变换 vc代码 小波变换 vc代码 小波变换 vc代码
VB.Net to C# Converter将VB代码转换成C#代码
本资源为【VB.Net to C# Converter】软件,它可以将VB代码转换成C#代码,效果很好