在struct中使用define的妙法

在看网络底层的程序时,看到以下格式的程序

 

struct a
{
  struct T b;
#define k b.k
#define m b.m
}data[10];

 

这种程序第一次看到,后来有几位高人指点,才知道这样子声明的变量,可以直接访问T里面的成员变量,例如可以如下

 

data[0].k即相当于访问变量T里面的成员k

 

注意,虽然#define k b.k是在struct内部,但其有全局作用域,因此起名的时候得注意

 

http://topic.csdn.net/u/20091119/12/010938e3-e7fe-4b04-af69-0a8050c69060.html?56559

©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页