C语言中宏定义的妙用方法

时间:2022-03-30 09:18:53

最近看了intel在linux内核中的驱动,学习到了一个非常有用的小技巧,如下代码:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
#define IN
#define OUT
#define UAdress volatile unsigned int *
#define Raw_buffer void *
void SetHwiPortsDataReg(IN UAdress Register , IN int value)
{
 _SetHwiPortsDataReg(Register,&value);
}
 
void _Out_Put_value(IN UAdress Register, OUT Raw_buffer buffer)
{
 _Out_Put_value(Register,buffer);
}

这里,IN和OUT的定义可以让代码更容易阅读,如上,IN表示把数据输入,OUT表示取数据,一个小小的技巧。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对服务器之家的支持。如果你想了解更多相关内容请查看下面相关链接

原文链接:https://blog.csdn.net/morixinguan/article/details/79296202