结构体和指针的使用
#include<stdio.h>
typedef unsigned char uchar;
typedef unsigned int uint;
struct STa
{
unsigned short mode;
unsigned char ch;
unsigned char hc;
unsigned char dt[8];
};
/******************************************************************************************
主函数
/******************************************************************************************/
void main(void)
{
uint c = 0;
struct STa sta1[2]; //结构体个数:2
struct STa *p_sta; //指向结构体成员的指针
sta1[0].dt[5] = 5; //结构体0 的成员 dt 赋值
sta1[1].dt[5] = 55; //结构体1 的成员 dt 赋值
p_sta = sta1 +1; //结构体1 的地址赋值
printf("sta1[0].dt[5] = %d\n",sta1[0].dt[5]); //输出结构体0 的成员 dt 值
printf("sta1[1].dt[5] = %d\n",sta1[1].dt[5]); //输出结构体成员1 的成员 dt 值
printf("p_sta->dt[5] = %d\n",p_sta->dt[5]); //输出结构体成员1 的成员 dt 值
printf("(p_sta-1)->dt[5] = %d\n",(p_sta-1)->dt[5]); //输出结构体成员0 的成员 dt 值
}