struct 初始化和使用技巧

使用. 的初始化比较方便可以参考使用;

可以初始化完直接定义一个指针 初始化为自己的结构体;

#include <stdio.h>
#include <string.h>
#include <pthread.h>
#include <stdlib.h>

typedef struct _w{
	int l,wr;
	char *w;
	long lg;
	char ww[1024];

}ww;

typedef struct _Cw{

	int a;
	void *na;
	float b;
	ww sw;
	ww *ppsw;
}Cw;

typedef struct _aw{
	int u;


}AW;

static ww ssw = {

	.l = 11,
	.wr = 33,
	.ww = {0},
	.lg = 999999999999,
}, *pw = &ssw;
// 初始化完,并且定义一个指针初始化为 本struct

static Cw ccw = {

	.a = 999,
	.na = &ssw,
	.b = 123323423,
	.ppsw = &ssw,


}, *pcw = &ccw;


void tw1(ww *w)
{
	printf("wr = %d\n",w->wr);
}

void tst(Cw *cw)
{
	printf( " cwa = %d, cw->na->lg = %ld\n",cw->a,cw->ppsw->lg);

}

int main()
{
	
tst(pcw);
Cw *tmp = (Cw*)malloc(sizeof(Cw)); //结构体的指针实例 要开辟空间哦 不然传到tw1(tmp)里面 会报段错误!!

tw1(tmp);
free(tmp);
tmp = NULL;

}

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值