黑马程序员技术交流社区

标题: 如何定义一个两值互换的宏定义 [打印本页]

作者: 桑托尔    时间: 2014-5-1 10:37
标题: 如何定义一个两值互换的宏定义
本帖最后由 桑托尔 于 2014-5-2 09:13 编辑

如题。我想在宏定义中实现两值互换,而不是用函数,怎么做到?
作者: 菜鸟de无奈    时间: 2014-5-1 11:18
本帖最后由 菜鸟de无奈 于 2014-5-1 11:21 编辑
  1. #import <Foundation/Foundation.h>
  2. #define Exchange(a, b) a = b - a;b = b - a;a = b + a;

  3. int main(int argc, const char * argv[])
  4. {
  5.     int a = 5;
  6.     int b = 7;
  7.    
  8.     Exchange(a, b);
  9.    
  10.     NSLog(@"a = %d, b = %d", a, b);
  11.    
  12.     return 0;
  13.    
  14. }
复制代码



作者: NenKeer    时间: 2014-5-1 11:19
  1. #define swap(x,y)  {x= x+y; y=x-y; x=x-y;}
复制代码

试试行不




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2