极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12400|回复: 5

如何將char轉換為int?

[复制链接]
发表于 2013-4-19 19:29:27 | 显示全部楼层 |阅读模式
假設
char a[]={'1', '2');

請問如何將 a 轉換為 int ? 也就是 12.
回复

使用道具 举报

发表于 2013-4-19 20:53:10 | 显示全部楼层
上百度搜 atoi
回复 支持 反对

使用道具 举报

发表于 2013-4-19 21:07:45 | 显示全部楼层
查一下ASCII码表你就会有灵感了。

‘0’的ASCII码是48,‘1’的ASCII码是49,
回复 支持 反对

使用道具 举报

发表于 2013-4-19 21:09:40 | 显示全部楼层
我这个是十六进制字符转为数字的。你根据要求自已改一下吧。

//十六进制字符串转为数字
int charToint(char charstr[2])
{
  int aa,bb;
  if (charstr[0]>='0' && charstr[0]<='9') aa=charstr[0]-'0';
  else if(charstr[0]>='a' && charstr[0]<='f') aa=charstr[0]-'a'+10;
  else if(charstr[0]>='A' && charstr[0]<='F') aa=charstr[0]-'A'+10;
  else return -1;
  if (charstr[1]>='0' && charstr[1]<='9') bb=charstr[1]-'0';
  else if(charstr[1]>='a' && charstr[1]<='f') bb=charstr[1]-'a'+10;
  else if(charstr[1]>='A' && charstr[1]<='F') bb=charstr[1]-'A'+10;
  else return -1;
  
  return aa*16+bb;
}
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-4-21 17:21:29 | 显示全部楼层
感謝各位大神.
回复 支持 反对

使用道具 举报

发表于 2013-4-21 23:43:24 来自手机 | 显示全部楼层
香港人吗 繁体字
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|联系我们|极客工坊

GMT+8, 2026-6-5 10:06 , Processed in 0.064866 second(s), 20 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表