如何将字符串转换为16进制数值

作者&投稿:历邓 (若有异议请与网页底部的电邮联系)
C语言如何把11位16进制字符串转成16进制数?~

#include
#include
voidmain()
{
char*p="0x1b";
char*str;
longi=strtol(p,&str,16);
printf("%d
",i);
}

//输出值为27
参数base代表采用的进制方式,如base值为10则采用10进制,若base值为16则采用16进制等。当base值为0时则是采用10进制做转换,但遇到如’0x’前置字符则会使用16进制做转换、遇到’0’前置字符而不是’0x’的时候会使用8进制做转换。

扩展资料
C语言十进制转2~16进制
#include

voidtrans(intdata,intbase)

{

intx[64],k,i=0;

while(data)

{

x[i]=data%base;

data/=base;

i++;

}

for(k=i-1;k>=0;k--)

if(x[k]<10)

printf("%d",x[k]);

elseif(x[k]<=16)

printf("%c",'A'+x[k]-10);

}

intmain(void)

{

intnum,base;

scanf("%d%d",&num,&base);

if(base16)

{

printf("dataerror
");

return;

}

printf("number=%dbase=%d
",num,base);

trans(num,base);

printf("
");

return0;

}

字符是指String?
十六进制字符串,指十六进制数字对应的字符串?

那就是

Integer.toHexString( (byte) String.charAt(i) )

举个例子:233转变成e9
233/16 = 14 余数为9
14的十六进制为e,9的十六进制还是9,所以转换结果为e9.
也就是说:如果相除的结果小于1,则结果是多少就直接转换
如果结果在1和15之间,则转换后的结果如本例所示.
依此类推.

再举个例子:143转变成e9
143/16 = 8 余数为15
8的十六进制还是8,15的十六进制是f,所以转换结果为8f.

看你想翻译多长的十六进制,太长的方法是比较复杂的。短的(8位及以下),我可以给你一点建议,每个十六进制位控制4个bit,你可以从低到高,赋值给一个int型的数,结果就出来了。

int char2int(char a[2])
{
int a,b;
if (a[0]>='0' && a[0]<='9') a=a[0]-'0';
else if(a[0]>='a' && a[0]<='f')) a=a[0]-'a'+10;
else if(a[0]>='A' && a[0]<='F')) a=a[0]-'A'+10;
else return -1;
if (a[1]>='0' && a[1]<='9') b=a[1]-'0';
else if(a[1]>='a' && a[1]<='f')) b=a[1]-'a'+10;
else if(a[1]>='A' && a[1]<='F')) b=a[1]-'A'+10;
else return -1;

return a*16+b;
}


C语言:怎样把字符1变成数字1?
1、打开电脑上的code blocks编辑器,点击新建file菜单,创建一个新的文件。2、使用\\n转义序列打印信息,按照如图所示代码更改,然后保存,build,Run。打印输出如下,打印出的信息换行输出。学会使用\\n换行输出。3、使用\\t制表符输出信息,在代码中输入{ printf("\\n制表符的形式\\t你学会了吗!");}打印...

按键精灵怎么把一个字符串转换成一个数字
在使用按键精灵时,要将识别后的字符串转换为数字,直接在字符串后加上0即可。例如,如果识别出的字符串是23424,添加0后,a=23424+0,即可将其转换为数字形式存储在变量a中。在多线程环境下,为了确保正确处理,可能需要在操作前设置环境变量,如dimenvb,然后将转换后的数值赋值给b。按键精灵的强大功...

按键精灵怎么把一个字符串转换成一个数字
说识别后得出的结果转为真正的数字,加0就成了。a="23424" +0:如果是多线程,还得环境变量一次才得出结果。dimenv b a="23424" +0 b=a 软件功能:1、网络游戏中可使用按键精灵制作脚本,实现自动打怪,自动补血,自动说话等;2、办公族可用按键精灵自动处理表格间数据的转换,自动调整文档格式、...

C语言中怎么将一个整数字符串转换为一个数
\/\/把一个整数字符串转换为一个数。intascii_to_integer(char*string){ intvalue;value=0;\/\/逐个把一个整数字符串转换为一个数。while(*string>='0'&&*string<='9'){ value*=10;value+=*string-'0';string++;} \/\/错误检查:如果由于遇到一个非数字字符而终止,把结果设置为0 if(*string!

C语言如何把一个字符串转换成数字
C语言中,可以使用atoi函数将字符串转换为数字,如atoi("123")可以得到数字123。atoi (表示 ascii to integer)是把字符串转换成整型数的一个函数,应用在计算机程序和办公软件中。int atoi(const char *nptr) 函数会扫描参数 nptr字符串,会跳过前面的空白字符(例如空格,tab缩进)等。如果 nptr不能...

vb 如何可以将字符串中包含不同的空格转换为1个
Do While i < Len(k)If Mid(k, i, 1) = " " And Mid(k, i + 1, 1) = " " Then k = Mid(k, 1, i) & Mid(k, i + 2)i = i - 1 End If i = i + 1 Loop Print k End Sub 另一方法:Private Sub Command1_Click()k = "u iwtj diu gi ugi og ...

如何用C++将数字“1”转换成字符“1”?
1、字符串数字之间的转换\\x0d\\x0a\\x0d\\x0a(1)string --> char *\\x0d\\x0astring str("OK");\\x0d\\x0achar * p = str.c_str();\\x0d\\x0a\\x0d\\x0a(2)char * -->string\\x0d\\x0achar *p = "OK";\\x0d\\x0astring str(p);\\x0d\\x0a\\x0d\\x0a(3...

怎么把一个字符串变成十进制数?
从数字组成的字符串转化为十进制数步骤如下:1、挨个读取数组,从第0位开始 2、将字符转化为数字。比如从'1'转化为1。可以参考ASCII码表,字符'0'是48,所以只需要将字符减去48即可。3、将前一个计算出的十进制数(初始化为0)乘以10加上第二步计算出的数字。4、循环1-3步直到读取完数组内所有...

matlab 字符转变成数字
1.在我们的电脑上打开matlab命令行窗口,输入“a=num2str(123)”,将数字123转换成字符串'123'2.按回车键之后,可以看到得到了字符串123 3.将数字转换成特定的字符串格式,如1到001,输入“a=num2str(1,'%03d')”,其中3是控制位数 4.在命令行窗口中输入“a=str2num('234')”,通过str2num函数...

java 如何将字符串中的一个字符转为数字
第一步用正则表达式找出其中的数字,第二步再从String转到int。String中有个方法replaceAll(String regex, String replacement) ,具体到你现在的需要就是用空(“”)将字符串中的非数字的表达式全部替换掉,这样就留下了数字串,然后用int的包装类的方法转换:Integer.parseInt(String str)...

吕梁市17581145711: 怎么把一个字符串转换成16进制数据 -
众英林迈: #include<stdio.h> int fun(char *s,int n) { int r=0;while ( *s ) {r*=n;if ( *s>='0' && *s<='9' ) r+=*s-'0';else if ( *s>='A' && *s<='Z' ) r+=*s-'A'+10;else if ( *s>='a' && *s<='z' ) r+=*s-'a'+10;s++;}return r; } void main() { int x; char s[80];scanf("%s",s); ...

吕梁市17581145711: 如何进行字符串和十六进制的转换 -
众英林迈: 主要有两个方法,其实都是对现有函数的使用:方法1: sscanf()函数名: sscanf 功 能: 从字符串格式化输入 用 法: int sscanf(char *string, char *format[,argument,...]);以上的 format 为 %x 就是将字符串格式化为 16 进制数例子:#...

吕梁市17581145711: 字符串怎样转化为16进制字符串 -
众英林迈: 将字符串先转换为字节流,再对每个字节转换为16进制的双字节字符,不到两字节前补0,然后拼接成十六进制长字符串.

吕梁市17581145711: 如何将输入的字符串转换成对应的16进制字符 -
众英林迈: 函数名: sscanf 功 能: 从字符串格式化输入 用 法: int sscanf(char *string, char *format[,argument,...]); 以上的 format 为 %x 就是将字符串格式化为 16 进制数 例子:#include <stdio.h> void main() { char* p = "0x1a"; int nValude = 0; sscanf(p, "%x", &nValude); printf("%d\r\n", nValude); } 输出:26

吕梁市17581145711: 如何将一个字符串转成所需要的16进制数字 -
众英林迈: #include int fun(char *s,int n) { int r=0; while ( *s ) { r*=n; if ( *s>='0' && *s else if ( *s>='A' && *s else if ( *s>='a' && *s s++; } return r; } void main() { int x; char s[80]; scanf("%s",s); x=fun(s,16); printf("%xH\n",s); //假设字符串中输入的是十六进制数据 }

吕梁市17581145711: 如何将字符串转换成十六进制数据 -
众英林迈: 字符类型是整型类型的一种,将其转换成int类型,然后再输出十六进制形式即可.下面是一个示例程序.#include <iostream> using namespace std; int main() { char str_test[] = "hello world\n"; int limit = strlen(str_test); for (int inx=0; inx!=limit; ++...

吕梁市17581145711: 如何将16进制的字符串转换为16进制的数字 -
众英林迈: int parseInt = Integer.parseInt("cc", 16);System.out.println(parseInt);String hexString = Integer.toHexString(parseInt);System.out.println(hexString);

吕梁市17581145711: 怎么把字符串转化为十六进制字符串 java -
众英林迈: 思路:用一个初始化为0~9~a~f的字符串数组,也就是一个十六进制对应表,用这个对应表即可算出一个十六进制字符串的数值.方法如下:public static String str2HexStr(String str) {char[] chars = "0123456789ABCDEF".toCharArray();...

吕梁市17581145711: 怎样把一个字符串转成16进制?如48D2352C947BAB16 -
众英林迈: int main(void) { int n; while(~scanf("%x", &n)) { printf("%d\n", n); } return 0; }

吕梁市17581145711: 如何将十进制字符串转换为十六进制 -
众英林迈: 十六进制转换成十进制:要从右到左用二进制的每个数去乘以16的相应次方; 在16进制中:a(A)=10 b(B)=11 c(C)=12 d(D)=13 e(E)=14 f(F)=15 所以CE=12*16^1+14*16^0=192+14=206

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网