久久婷婷香蕉热狠狠综合,精品无码国产自产拍在线观看蜜,寡妇房东在做爰3,中文字幕日本人妻久久久免费,国产成人精品三上悠亚久久

當前位置:首頁 > 嵌入式培訓 > 嵌入式學習 > 講師博文 > 10進制轉16進制(采用移位實現)

10進(jin)制(zhi)轉16進(jin)制(zhi)(采用移位實現) 時間(jian):2018-09-25      來源:未知

數值的進(jin)制轉換在編程中經常會遇到,今天給大家介紹一種通過移位運算實現(xian)進(jin)制轉換的方法。

/*

功能: 該函數采用移(yi)位實現10進制數轉換成16進制數

函數名: to10_16

參數 : n--要轉換的10進制數

編寫: 劉sir

時間(jian): 2015.7

版本: v1.0

*/

#include

#include

//#define print(format,...) fprintf(stderr,format,##__VA_ARGS__)

//#define print1(format,args...) fprintf(stderr,format,##args)

void to10_16(int n)

{

int a=n,n1,i;

char ch[9];

memset(ch,0,sizeof(ch)); //數組初始(shi)化

/*===================通過(guo)移(yi)位實現數值轉(zhuan)換================================*/

for(i = 1;i <= 8;i++)

{

n1 = n-((n>>(4*i))<<(4*i));

n = (n>>(4*i))<<(4*i);

n1 = n1>>(4*(i-1));

if(0 == n1)

break;

if(n1 < 10)

ch[8-i] = n1+'0';

else

ch[8-i] = n1-10+'A';

}

ch[8] = '\0';

 /*=========================================================================*/

//讓(rang)p指向第一個(ge)非0的字符元素(su)

char *p = ch;

while(0 == *p)p++;

printf("%d(10) is 0x%s(16)\n&quot;,a,p); //打(da)印

}

int main(void)

{

int a,n,n1,i;

char ch[9];

memset(ch,0,sizeof(ch));

scanf("%d",&a);

to10_16(a);

return 0;

}

上一篇:大神修煉第一步

下一篇:linux網絡編程中的并發控制

熱點文(wen)章推薦
華清學員就(jiu)業(ye)榜單
高(gao)薪(xin)學員經驗分享(xiang)
熱點新(xin)聞推薦
前(qian)臺專線:010-82525158 企(qi)業(ye)培訓洽談專線:010-82525379 院(yuan)校合作洽談(tan)專(zhuan)線:010-82525379 Copyright © 2004-2022 北京華清遠見科技集團有限公司 版權所有 ,,京公海網安備11010802025203號

回到頂部