今天笔试的一道题目,大家帮忙看下。

达尔文 2009-12-09 09:00:26
C语言的。
function (char *a ,char *b ,int len){
switch(len & ox7){
while(len>7){
len-=8;*b++ = *a++;
case 7:*b++ = *a++;
case 6:*b++ = *a++;
case 5:*b++ = *a++;
case 4:*b++ = *a++;
case 3:*b++ = *a++;
case 2:*b++ = *a++;
case 1:*b++ = *a++;
}

}

}
question: what does the function do?

我是凭借自己记忆写下来的,我是弄java的。望各位帮忙解答下。
...全文
143 14 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
KSVINSON 2009-12-09
  • 打赏
  • 举报
回复
这个函数什么作用,
10楼的兄弟,如果是内存拷贝,这样实现,为什么会有效率,Cache是8的倍数?跳转没见少多少,
能仔细说下嘛??
达尔文 2009-12-09
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 z569362161 的回复:]
你的问题难回答,这是个子函数。

谁知道主函数传进来什么?
[/Quote]
两个参数 char *a char *b 根据上面老兄的回答 我理解传进来两个char数组。其它的还有别的吗?
z569362161 2009-12-09
  • 打赏
  • 举报
回复
你的问题难回答,这是个子函数。

谁知道主函数传进来什么?
达尔文 2009-12-09
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 mstlq 的回复:]
引用 9 楼 xzl1203 的回复:
引用 8 楼 mstlq 的回复:
switch和while反了……
这个就是memecpy……
拷贝内存中的内容……
效果等同于
C/C++ codefunction (char*a ,char*b ,int len)
{while(len-->0)*b++=*a++;
}

写成switch case是为了将循环展开,提高运算速度

非常感谢您。
我非常想知道 这个方法调用之后的运行结果是什么。
这个应该可以调用吧?
function('a' , 'b' , 3);


不可以……
通常用法是
char a[6]="hello";
char b[6]="dd";
function(a,b,6);
[/Quote]
理解了!!原来是个char数组。
mstlq 2009-12-09
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 xzl1203 的回复:]
引用 8 楼 mstlq 的回复:
switch和while反了……
这个就是memecpy……
拷贝内存中的内容……
效果等同于
C/C++ codefunction (char*a ,char*b ,int len)
{while(len-->0)*b++=*a++;
}

写成switch case是为了将循环展开,提高运算速度

非常感谢您。
我非常想知道 这个方法调用之后的运行结果是什么。
这个应该可以调用吧?
function('a' , 'b' , 3);
[/Quote]

不可以……
通常用法是
char a[6]="hello";
char b[6]="dd";
function(a,b,6);
达尔文 2009-12-09
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 mstlq 的回复:]
switch和while反了……
这个就是memecpy……
拷贝内存中的内容……
效果等同于
C/C++ codefunction (char*a ,char*b ,int len)
{while(len-->0)*b++=*a++;
}

写成switch case是为了将循环展开,提高运算速度
[/Quote]
非常感谢您。
我非常想知道 这个方法调用之后的运行结果是什么。
这个应该可以调用吧?
function('a' , 'b' , 3);
mstlq 2009-12-09
  • 打赏
  • 举报
回复
switch和while反了……
这个就是memecpy……
拷贝内存中的内容……
效果等同于
function (char *a ,char *b ,int len)
{
while(len-- >0)
*b++=*a++;
}


写成switch case是为了将循环展开,提高运算速度
达尔文 2009-12-09
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 zkw0302 的回复:]
你肯定写错啦,不合语法
[/Quote]
哦 我也是凭借记忆写出来的。您帮忙纠正一下。谢谢了
zkw0302 2009-12-09
  • 打赏
  • 举报
回复
你肯定写错啦,不合语法
达尔文 2009-12-09
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 freshui 的回复:]
switch 和 while 有没有写反了?
[/Quote]
没有写反 这点我记得。
芒果仔 2009-12-09
  • 打赏
  • 举报
回复
感觉像计算机二级的题目嘛,这么BT
freshui 2009-12-09
  • 打赏
  • 举报
回复
switch 和 while 有没有写反了?
达尔文 2009-12-09
  • 打赏
  • 举报
回复
楼上的哥们 能说的详细点不?
do_fork 2009-12-09
  • 打赏
  • 举报
回复
memcpy
笔试(erp系统管理员)题目 求解 偶乃一应届毕业生,上星期在网上见到一不错的公司招oracle数据库管理,于是屁颠屁颠跑到那公司,骗过门卫和保安,咨询了搞卫生的阿姨后,见到了人力资源部主管,话都没说上两句,给偶一道题目(erp系统管理员),结果没几个会做的。其实我自己也挺想往erp方向发展,所以打算下个星期再去。 请各位大虾们帮帮忙忙,提点提点。(我在论坛上查了些,资料,还是有好多不会的。) 1。列出 erp供应商及erp产品的名称,版本? (erp供应商是不是:racle erp在咱国内的用户比如,华菱、湘钢、衡钢、承 钢、济钢等等。名称和版本呢?) 2。名词解释 erp,crm,hr,oa,srm,pdm (我只查到了erp,crm,hr的解释,其他的查不到) 3。用一句话说明 bom,采购计划,生产订单,销售订单,物料清单 (查不到 ) 4。写sql语句。 ‘存货档案’(表一): 存货编码(c),存货名称(c),存货规格(c),存货类别(c) ‘发货单’(表二):存货编码(c),数量(n),单价(n) 用sql写出 A:存货类别为'办公用品',发货金额在1000元以下的所有发货单 B: 按存货名称汇总发货单的发货金额 (此题会做一点点,但是写得不全,还得请大家指导) 5 写出erp系统对'销售发货单',‘销售普通发票’生成的会计分录 (完全摸不着头脑)

70,023

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧