您当前的位置: 首页 > 

柳鲲鹏

暂无认证

  • 0浏览

    0关注

    4642博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

C中使用汇编交换两个值

柳鲲鹏 发布时间:2019-04-19 15:56:30 ,浏览量:0

  使用宏定义虽然也可以,总是觉得不方便。吾一直想,最好提供一个交换指令,然后直接定义一个函数供调用。

以下代码没有经过测试,请自行验证。

 

  • WINDOWS
int x=1, y=200;

_asm
{
    push x;
    push y;
    pop  x;
    pop  y;
}

printf("x=%d, y=%d\n", x, y);
  • LINUX

int x=1, y=200;
asm(
    "push x\n\t"
    "push y\n\t"
    "pop  x\n\t"
    "pop  y\n\t"
);
printf("x=%d, y=%d\n", x, y);

 

关注
打赏
1665724893
查看更多评论
立即登录/注册

微信扫码登录

0.0554s