c++中的八进制字符串

String to octal in c++

本文关键字:字符串 八进制 c++      更新时间:2023-10-16
String hexstr = "0x12AB450912AB450912AB450912AB450912AB4509";

我有一个长度为40字节的字符串。

我需要将上面的字符串转换为八进制(到20字节)

char *endp;
strtoul(hexstr , &endp, 8);

要使用上面的函数,它适用于长,即8字节。但是我的字符串是40字节

可以有人告诉我如何转换到八进制和存储回字符串?

函数返回一个unsigned long int,所以它将返回的最大值是8字节,假设它没有疯狂地尝试转换40字节字符串。没有标准的整数类型保存40字节。您可以通过将数字转换为二进制并读取每3位来获得该数字的八进制版本