小编nun*_*uck的帖子

C++中的十六进制字符到int

如何将十六进制字符而不是字符串更改为数值?

在输入这个问题时,我发现了很多关于如何将十六进制字符串转换为值的答案.然而,没有人为chars工作.我记得在某处读到这适用于字符串:

std::string mystr = "12345";
unsigned int myval;
std::stringstream(mystr) >> std::hex >> myval;
Run Code Online (Sandbox Code Playgroud)

但是,如果我mystr[x]在循环中执行此代码将无法正常工作.我尝试添加一个新行std::string temp = mystr[x]并更改std::stringstream(mystr)std::stringstream(temp),但这也不起作用.

那我该怎么做呢?目前,我正在搜索一个十六进制字符串("0123456789abcdef".find(mystr[x]);)并使用索引作为值.但是,由于它搜索,它很慢,即使它只搜索16个字符.

http://ideone.com/dIyD4

c++ int hex char

3
推荐指数
3
解决办法
1万
查看次数

标签 统计

c++ ×1

char ×1

hex ×1

int ×1