简体   繁体   English

如何初始化Typedef结构指针

[英]How to initiaze a typedef struct pointer

I need to initialize a typedef struct pointer 我需要初始化一个typedef结构指针

in header file, 在头文件中

typedef struct {
    DWORD RxBuf[4];             
    DWORD Tr0c;                 
} t, *p_t;

In the cpp file, 在cpp文件中,

static p_t p1
    = {
    {0x00,0x00,0x00,0x00},  
    0               
};

Just a guess, I believe you want to do: 只是一个猜测,我相信您想这样做:

static t tNull
    = {
    {0x00,0x00,0x00,0x00},  
    0               
};

static p_t p1 = &tNull;

p_t is a pointer, therefore you have to point it to a valid object of type t . p_t是一个指针,因此您必须将其指向类型t的有效对象。

You can make the object and point to it: 您可以制作对象并指向它:

t var = { { 1 , 2 , 3 , 4 } , 5  } ;
p_t pointer = &var ;

Or use a compound literal: 或使用复合文字:

p_t pointer = &( t ){ { 1 , 2 , 3 , 4 } , 5  } ;

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM