a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 編程 > C > 正文

c語言中十六進制轉二進制顯示的實現方法

2020-02-24 14:30:13
字體:
來源:轉載
供稿:網友

c語言中如何實現十六進制轉二進制顯示?相信不少小伙伴們都被這個難題困擾過,那么我們現在將帶著這個疑問去看看c語言中十六進制轉二進制顯示的實現方法吧。


//======================================

?

//輸出格式: hex2bin 5e.

//得到: 0101 1110

//======================================

#include <stdio.h>
#include <limits.h>

char *bitstr(char *, void const *, size_t);

int main(int argc, char **argv)
{

?? unsigned char value;
?? char *pointer;
?? char ebits[CHAR_BIT * sizeof value + 1];

??
?? value = 0;

?? for (pointer = argv[1]; *pointer; ++pointer) {
???? value <<= 4;
???? switch (*pointer) {
??????? case 'a':
??????? case 'A':
??????????? value += 0xa;
??????????? break;
??????? case 'b':
??????? case 'B':
??????????? value += 0xb;
??????????? break;
??????? case 'c':
??????? case 'C':
??????????? value += 0xc;
??????????? break;
??????? case 'd':
??????? case 'D':
??????????? value += 0xd;
??????????? break;
??????? case 'e':
??????? case 'E':
??????????? value += 0xe;
??????????? break;
??????? case 'f':
??????? case 'F':
??????????? value += 0xf;
??????????? break;
??????? default:
??????????? value += *pointer - '0';
??????????? break;
? }
?? }
?? bitstr(ebits, &value, sizeof value);
?? printf("The binary representation of 0x%s is ", argv[1]);

?? for (pointer = ebits, value = 0; *pointer != '/0'; ++pointer) {
??? if(value > 3) {
?????????? value = 0;
???? putchar(' ');
?????????? putchar(*pointer);
??? }
??? else {
???? value++;
??????? putchar(*pointer);
??? }
?? }
??

?? return 0;
}


char *bitstr(char *str, const void *obj, size_t n)
{
?? unsigned char mask;
?? const unsigned char *byte = obj;
?? char *const ptr = str;

?? while (n--) {
????? mask = ((unsigned char)-1 >> 1) + 1;
????? do {
???????? *str++ = (char)(mask & byte[n] ? '1' : '0');
???????? mask >>= 1;
????? } while (mask);
?? }
?? *str = '/0';
?? return ptr;
}

關于c語言中十六進制轉二進制顯示的實現方法將為大家介紹到這里啦,如果你還有不懂的地方就請留言給小編吧。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: av中文字幕在线观看 | 国产九九精品视频 | 中国av在线 | 久久精品色欧美aⅴ一区二区 | 免费的av网站 | 日本www| 日韩一区中文 | 成人国产在线观看 | 射久久| www.久久久.com| 国产精品欧美综合 | 黄色永久网站 | 自拍小电影 | 色一情| 黄色大片观看 | 青青操av | 成人在线视频网址 | 91精品国产777在线观看 | 日韩一区电影 | 成人免费在线网址 | 久久精品亚洲精品国产欧美kt∨ | 亚洲国产91 | 欧美一区二区国产 | 精品国产乱码久久久久久蜜柚 | 免费国产视频在线观看 | 午夜视频免费网站 | 日韩永久精品 | 日韩欧美国产成人一区二区 | 热久久久| 国产一区二区视频在线播放 | 青青草亚洲 | 精品国产青草久久久久福利 | 中文字幕2021 | 亚洲成人av在线 | 国产精品99久久久久久久vr | 超碰国产在线 | 蜜桃久久av | 国产婷婷| 国产综合亚洲精品一区二 | 在线日韩欧美 | 欧美日韩久久 |