为printf定义一个宏是错误的吗?
发布时间:2020-12-16 10:09:12 所属栏目:百科 来源:网络整理
导读:我是出于一般知识目的而要求这个. 我可以在头文件中定义printf并使用pf在整个程序中替换printf吗? 基于任何标准都是错的吗? #includestdio.h#define pf printf //printf defined hereint main(){ int x=10; pf("x=%d",x); //pf is used instead of printf}
我是出于一般知识目的而要求这个.
我可以在头文件中定义printf并使用pf在整个程序中替换printf吗? 基于任何标准都是错的吗? #include<stdio.h> #define pf printf //printf defined here int main(){ int x=10; pf("x=%d",x); //pf is used instead of printf } PS:学习新事物只是为了在课堂上取得成功;) 解决方法
这是完全合法的 – 而且非常糟糕的风格.
编译器将用printf替换标识符pf的每次出现. 但是每次使用它时都要完整地编写printf,这使得您的代码对于读者来说更具可读性.如果我看到对printf的调用,我确切地知道它意味着什么.如果我看到一个名为pf的东西的调用,我的第一个假设就是你有一个名称的函数,我需要找出它的作用.在我能理解调用的含义之前,我必须先寻找你的宏定义.它比使用宏保存的4次击键浪费的时间要多得多. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |