将宏用于参数

时间:2016-03-25 20:10:10

标签: c macros wrapper readability

我正在尝试围绕一个函数创建一个宏包装器,这样我就可以在阅读时使代码更直观。有点像是强调 send_message_to_destination(m,d)来写发送(m)到(d)

#include <stdio.h>

void send_data_to(int data, int dest)
{
    printf("Send %d to %d\n", data, dest);
}


#define send(data)to(destination) send_data_to(data, destination) 

int main() {

    int data = 5;
    int dest = 10;

    send(data)to(dest);
}

有可能这样做吗? 您是否认为这会使代码更具可读性或直观性?

2 个答案:

答案 0 :(得分:0)

我同意这些评论(不是一个好主意),但是,你可以使用这样的东西。请记住,预处理器只是用宏替换文本。

#define to(destination) destination)
#define send(data) send_data_to(data,  

答案 1 :(得分:0)

没有这样的方法可以使用MACROS