输入任意长的可见字符,将该字符串的数据转为字符型的二进制01和十六进制0-f的字符串在终端显示。
示例:
输入:abcdef
在屏幕输出二进制:01100001 01100010 01100011 01100100 01100101 01100110
十六进制:616263646566
字符串转二进制和十六进制字符串
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
2条回答 默认 最新
技术专家团-小桥流水 2021-11-15 11:09关注代码如下:
#include <stdio.h> //转2进制字符串 void fun(char ch,char buf[]) { int i,t,n=7; for(i=0;i<8;i++) buf[i] = '0'; t = ch; while(t) { buf[n] = '0'+t%2; t/=2; n--; } buf[8] = 0; } int main() { int i = 0; char buf[1000]={0}; char tmp[10]={0}; gets(buf); while(buf[i]) { fun(buf[i],tmp); if(i==0) printf("%s",tmp); else printf(" %s",tmp); i++; } printf("\n"); i=0; while(buf[i]) { printf("%0x",buf[i]); i++; } return 0; }本回答被题主选为最佳回答 , 对您是否有帮助呢?评论 打赏 举报 编辑记录解决 1无用