码迷,mamicode.com
首页 > 其他好文 > 详细

函数和预处理的区别

时间:2015-07-29 19:40:38      阅读:152      评论:0      收藏:0      [点我收藏+]

标签:函数与预处理

第一:对于预处理来说它与类型无关,举例如下,

#include <stdio.h>
#define SIZE(X) sizeof(X)
int main ()
{   
    int ret;
    ret=SIZE(int);
    printf("%d",ret);
    return 0;
}
像这样函数就做不到,因为函数的参数不可能是类型名;第二,在预处理时的内容是直接替换的不经过任何处理,而在函数传参时是要处理的;第三,它们的速度也不相同,预处理是在函数执行前操作的而函数是调用时才执行;第四,预处理每执行一次时它就会产生一行代码,而函数永远只有一个;第五,预处理可能会产生副作用(I++)


本文出自 “咕噜咕噜” 博客,请务必保留此出处http://10548202.blog.51cto.com/10538202/1679707

函数和预处理的区别

标签:函数与预处理

原文地址:http://10548202.blog.51cto.com/10538202/1679707

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!