在单片机的编程中对于8位、16位、32位整数的分解与合并用的比较多,今天做了简要学习,后面还需要加以总结。
练习在VC++6.0编程环境中进行,源程序:
#include
#include "string.h"
int main(int argc, charargv[])
{
unsigned int Data_Uint32=0x12345678;
unsigned short int Data_Uint16_1,Data_Uint16_2;
unsigned char Data_Uint8_1,Data_Uint8_2,Data_Uint8_3,Data_Uint8_4;
struct StructByte8{
unsigned char Byte01:1;
unsigned char Byte02:1;
unsigned char Byte03:1;
unsigned char Byte04:1;
unsigned char Byte05:1;
unsigned char Byte06:1;
unsigned char Byte07:1;
unsigned char Byte08:1;
} Test1;
unsigned char C1[]="A";
unsigned short intp16=(unsigned short int *)(&Data_Uint32);//定义16位的指针将32位地址强制转为16位,高位丢弃取低位
unsigned short int Data_Uint16_2p,Data_Uint16_1p;
<