sirroom
驱动大牛
驱动大牛
  • 注册日期2001-07-30
  • 最后登录2018-05-29
  • 粉丝0
  • 关注0
  • 积分6分
  • 威望11点
  • 贡献值1点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:2076回复:7

请教大家一个面试问题void (*func(int,int))(int,int) 试举例实现

楼主#
更多 发布于:2001-11-03 21:48
1 好怪的题,谁来试试?
2.__asm__ __volatile__(
"cld\n"
"1:\tdecl %2\n\t"
"js 2f\n\t"
"lodsb\n\t"
"stosb\n\t"
"testb %%al,%%al\n\t"
"jne 1b\n\t"
"rep\n\t"
"stosb\n"
"2:"
: "=&S" (d0), "=&D" (d1), "=&c" (d2), "=&a" (d3)
:"0" (src),"1" (dest),"2" (count) : "memory");
是linux中的一段汇编代码,谁能大概说一下linux下的汇编代码是怎么回事。
111
gjpland
驱动小牛
驱动小牛
  • 注册日期2001-09-13
  • 最后登录2011-03-22
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2001-11-04 14:57
1.is equal following coding
typedef void (* funcptr)(int,int);
funcptr func(int,int);
2.String copy (strcpy)
我思故我在,脑袋不会坏.
sirroom
驱动大牛
驱动大牛
  • 注册日期2001-07-30
  • 最后登录2018-05-29
  • 粉丝0
  • 关注0
  • 积分6分
  • 威望11点
  • 贡献值1点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2001-11-04 16:48
1.实现呢?
void (*func(int,int))(int,int)
回答的很象哦,
偶要的是实现代码
2.结果是strcpy,但我问的是过程
3.不过还是想给分,但怎么给?,hoho

111
sirroom
驱动大牛
驱动大牛
  • 注册日期2001-07-30
  • 最后登录2018-05-29
  • 粉丝0
  • 关注0
  • 积分6分
  • 威望11点
  • 贡献值1点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2001-11-05 15:10
没人接招了??
偶ft..
。。。
不对啊?
111
ldd
ldd
驱动牛犊
驱动牛犊
  • 注册日期2001-08-18
  • 最后登录2003-11-03
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2001-11-05 15:57
实现是什么意思?

下面是msdn中的一段代码,不知是不是你想要的:

BOOL (WINAPI *lpfEnumProcesses)( DWORD *, DWORD cb, DWORD * );      

...

lpfEnumProcesses = (BOOL(WINAPI *)(DWORD *,DWORD,DWORD*))
            GetProcAddress( hInstLib, "EnumProcesses" );
lpfEnumProcesses(lpdwPIDs, dwSize2, &dwSize);

...

        
xuye
驱动小牛
驱动小牛
  • 注册日期2001-03-23
  • 最后登录2008-05-05
  • 粉丝0
  • 关注0
  • 积分40分
  • 威望4点
  • 贡献值0点
  • 好评度4点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2001-11-05 20:46
#include <stdlib.h>
#include <stdio.h>

void otherfun(int i, int j);
void (* myfun(int i, int j))(int, int);

typedef void (* MYFUN(int i, int j))(int, int);

int main()
{
void(* f)(int, int) = myfun(0xaa, 0xaa);

(* f)(0x55, 0x55);
exit(0);
}

void (* myfun(int i, int j))(int, int)
{
void(* f)(int, int) = otherfun;
printf("i = %x  j = %x\n", i, j);
return f;
}

void otherfun(int i, int j)
{
printf("i = %x  j = %x\n", i, j);
}
xuye
驱动小牛
驱动小牛
  • 注册日期2001-03-23
  • 最后登录2008-05-05
  • 粉丝0
  • 关注0
  • 积分40分
  • 威望4点
  • 贡献值0点
  • 好评度4点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2001-11-05 20:48
前边两个#include是
#include "stdlib.h"
#include "stdio.h"
sirroom
驱动大牛
驱动大牛
  • 注册日期2001-07-30
  • 最后登录2018-05-29
  • 粉丝0
  • 关注0
  • 积分6分
  • 威望11点
  • 贡献值1点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2001-11-07 09:00
偶要给分哦,可是怎么给啊??
111
游客

返回顶部