数据转换-16进制字符

任务详情

  1. 在openEuler(推荐)或Ubuntu或Windows(不推荐)中完成下面任务
  2. 在utils.h和utils.c中完成16进制字符’0′-‘9′,’A’-‘F’,’a’-‘f’与十六进制数据0-15的转换功能(10’):
int Hex2Char(unsigned int fromi,unsigned char * toc);
int Char2Hex(unsigned char fromc,unsigned int * toi);
  1. 并写出测试代码测试上述函数(不能与下面代码一样),比如:(10’)
unsigned char * c;
Hex2Char(1, &c)
//结果:c = '1'
Hex2Char(15, &c)
//结果:c = 'F'
unsigned int i;
Char2Hex('1', &i);
//结果:i = 1
Char2Hex('F', &i);
//结果:i = 15
  1. 提交代码(或代码链接)和运行结果

任务过程

utils.h

#ifndef _UTIL_H_
#define _UTIL_H_

//char Hex2Char(int i);
//int Char2Hex(char c);

int Hex2Char(int fromi,char * toc);
int Char2Hex(char fromc,int * toi);

int Bitstr2ByteArr(char * bs,char * ba);
int ByteArr2Bitstr(char * ba,char * bs);

int Int2ByteArr(int i,char * ba);
int ByteArr2Int(char * ba,int * i);

#endif

utils.c

#include<stdio.h>
#include"utils.h"
char Hstr = {'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};

int Hex2Char(int fromi,char *toc)
{
    if(fromi>=0&&fromi<=9) { *toc="fromi+'0';" } else if(fromi>=10&&fromi<=15) { *toc="fromi+'A'-10;" } else printf("error"); return 0; int char2hex(char fromc,int *toi) if(fromc>='0'&& fromc<='9') { *toi="fromc-'0';" } else if(fromc>='A'&& fromc<='f') { *toi="fromc-'A'+10;" } else printf("error"); return 0; < code></='f')></='9')></=15)></=9)></stdio.h>

数据转换-16进制字符

main.c

#include<stdio.h>
#include"utils.h"
int main(){
  int n1,n2;
  char c1,c2;
  printf("&#x8BF7;&#x8F93;&#x5165;&#x4E00;&#x4E2A;0~15&#x7684;&#x6570;&#xFF1A;");
  scanf("%d",&n1);
  Hex2Char(n1,&c1);
  printf("&#x5BF9;&#x5E94;&#x7684;16&#x8FDB;&#x5236;&#x5B57;&#x7B26;&#x662F;%c\n",c1);
  printf("&#x8BF7;&#x8F93;&#x5165;&#x4E00;&#x4E2A;16&#x8FDB;&#x5236;&#x5B57;&#x7B26;&#xFF1A;");
  scanf("%c",&c2);
  Char2Hex(c2,&n2);
  printf("&#x5BF9;&#x5E94;&#x7684;&#x6570;&#x662F;%d\n",n2);
}
</stdio.h>

运行结果:

数据转换-16进制字符

Original: https://www.cnblogs.com/zzjjyy123/p/16262589.html
Author: 20191223张俊怡
Title: 数据转换-16进制字符

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/585823/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球