关于 c 的宏定义转为 c#函数的问题(50分) 那就不用宏啦,手工把代码替换一下。宏说白了就是替换。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 >>>>c 的宏定义a,b,c,d的值都会改变,而c#只改变a,c.我不明白为什么 c 的宏定义下b,d的值要改变 c#只改变a,c----因为加了ref修饰,b,d没有(于是发生值传递) c的宏定义只是做一个简单的替换工作,比如:你定义了#define f_rnd(i,a,b,c,d) u = rotl(d * (d + d + 1), 5); t = rotl(b * (b + b + 1), 5); a = rotl(a ^ t, u) + l_key[i]; c = rotl(c ^ u, t) + l_key[i + 1]那么程序中一旦遇到f_rnd(i,a,b,c,d)形式就会替换为你下面的形式.这和函数不同 二叉树问题,程序运行出死循环 消息队列数据传不出去 C# webbrowser模拟发博文 textarea无法输入问题 异步socket发送大文本疑问 jmail转发邮件,问题求助 InstrumentaionManager在运行时可否多次publish有同一个名字的类对象? 如何在PC捕捉视频并在WinCE平台下播放? 高分求教如何在C#中比较字符串大小?? 新手请假接口编程的问题! 如何部署三层数据结构的应用程序 高分求救高手,自制控件属性变了外观也跟着改变。 问一个比较简单的问题,查资料不知道从何查起。。。
c的宏定义只是做一个简单的替换工作,比如:你定义了
#define f_rnd(i,a,b,c,d)
u = rotl(d * (d + d + 1), 5);
t = rotl(b * (b + b + 1), 5);
a = rotl(a ^ t, u) + l_key[i];
c = rotl(c ^ u, t) + l_key[i + 1]那么程序中一旦遇到f_rnd(i,a,b,c,d)形式就会替换为你下面的形式.这和函数不同