1. 程式人生 > >C語言16位拆成高低八位,和高低八位合成16位資料(1)

C語言16位拆成高低八位,和高低八位合成16位資料(1)

#include <stdio.h>
#include <stdlib.h>
char right,left,temp;//right表示第八位,left表示高八位
int size_right,size_left,size_temp;
short int number,size_number;
short int number_two,number_three;
//int 是四個位元組 short int 是兩個位元組
int main()
{
    number =32343; //65536個數範圍是 -32768-32767
    size_number = sizeof
(number); size_right = sizeof(right); size_left = sizeof(left); size_temp = sizeof(temp); printf("size_number=%d個位元組\n",size_number); printf("size_left=%d個位元組\n",size_left); printf("size_right=%d個位元組\n",size_right); printf("size_temp=%d個位元組\n",temp); printf("number=%d\n"
,number); right = number&0XFF;//低八位 left = number>>8;//高八位 printf("right = %d\n",right); printf("left = %d\n",left); printf("number_two=%d\n",left*256+right); //前取高八位,在取低八位 left=(number>>8)&0XFF; //先取高八位 right=number&0XFF; //再取第八位 printf("number_two=%d\n"
,left*256+right); //現在要把高八位和第八位合併 number_three=left; number_three<<=8; number_three|=right; printf("number_three=%d",number_three); return 0; }