String hexstr = "0x12AB450912AB450912AB450912AB450912AB4509";
我有一个长度为40个字节的字符串。
我需要将上面的字符串转换为八进制(到20个字节)
char *endp;
strtoul(hexstr , &endp, 8);
要使用上述功能,它可以长时间工作,即8个字节。 但我的字符串是40个字节。
有些机构可以告诉我如何转换为八进制并存储回字符串吗?
答案 0 :(得分:1)
该函数返回一个unsigned long int,因此返回的最大值为8
个字节,假设尝试转换40
字节字符串并不疯狂。没有标准整数类型保存40
个字节。你可以通过将数字转换为二进制并每3位读取一次来获得这个数字的八进制版本