atoi() 来自十六进制表示字符串
Posted
技术标签:
【中文标题】atoi() 来自十六进制表示字符串【英文标题】:atoi() from hex representation string 【发布时间】:2013-12-18 09:39:13 【问题描述】:需要从像 "0xFA"
或更好的 "FA"
这样的十六进制表示字符串生成 int。需要像atoi("FA")
这样的东西。是否有任何标准解决方案?
【问题讨论】:
类似strtol
,你的意思是?
Know your tools
【参考方案1】:
尝试使用strtol():
strtol("FA", NULL, 16);
【讨论】:
注意:它也适用于0xFA
:“(可选)前缀(0x 或 0X)表示十六进制基数(仅当基数为 16 或0时适用)”
对于无符号的,你应该使用strtoul()来正确处理像“0x81234567”这样的字符串,否则你会得到0xFFFFFFFF返回。以上是关于atoi() 来自十六进制表示字符串的主要内容,如果未能解决你的问题,请参考以下文章
ValueError:spacy.strings.StringStore 大小已更改,可能表示二进制不兼容。预期来自 C 标头的 80,来自 PyObject 的 64