#include <stdio.h>
void itob(int ,char s[],int);
void reverse(char s1[]);
int main(void)
{
char s[100]={0};
itob(-80,s,16);
printf("%s\n",s);
return 0;
}
void itob(int n,char s[],int b)
{
int i,sign;
sign=n;
unsigned n_copy;
if (sign<0)
{
if((n-1)>0)
n_copy=n;
else
n_copy=-n;
}
else
n_copy=n;
i=0;
do
{
if ((n_copy % b)<10)
s[i++]=n_copy %b +'0';
else
s[i++]=n_copy %b +'A';
}
while((n_copy/=b)>0);
if(b==16)
{
s[i++]='X';
s[i++]='
3-5 itob(n,s,b),将整数n转化为以b为底的数,并将转换结果以字符形式保存到字符串s中
最新推荐文章于 2021-12-05 16:16:56 发布
本文介绍了一个C语言程序,用于将整数(包括负数)转换为16进制字符串。程序包含`itob`函数进行转换,`reverse`函数反转字符串,最终输出转换后的十六进制表示。
摘要由CSDN通过智能技术生成