原创 .和->的区别

2013-10-4 08:05 880 16 16 分类: MCU/ 嵌入式

尽管在C语言书上看到,在结构体中.和->表示成员变量的意思,但在实际编程的时候,他们还是有区别的,举个例子:

 typedef struct
 {
   u16 Zone;
   u16 Block;
   u16 Page;
 } NAND_ADDRESS;

这里声明一个结构体,然后再实例化

NAND_ADDRESS WrtReadAddr;

这样在程序中就要用.号来表示成员变量,如下:

 WrtReadAddr.Zone  = 0x00;
 WrtReadAddr.Block = 0x00;
 WrtReadAddr.Page  = 0x00;

如果用->就是错误。

如果我们定义一个(NAND_ADDRESS *)NAND_Addr

那么我们可以用->来访问成员变量

NAND_Addr->Zone = 0x00;
NAND_Addr->Block = 0x00;
NAND_Addr->Page = 0x00;

 

文章评论0条评论)

登录后参与讨论
我要评论
0
16
关闭 站长推荐上一条 /2 下一条