C++ c+中的八进制字符串+;
我有一个长度为40字节的字符串 我需要将上面的字符串转换为八进制(20字节) 要使用上述函数,它可以长时间工作,即8个字节。 但是我的字符串是40字节C++ c+中的八进制字符串+;,c++,string,octal,C++,String,Octal,我有一个长度为40字节的字符串 我需要将上面的字符串转换为八进制(20字节) 要使用上述函数,它可以长时间工作,即8个字节。 但是我的字符串是40字节 有人能告诉我如何转换成八进制并存储回字符串吗?该函数返回一个无符号长整数,因此它将返回的最大值是8字节,假设它在转换40字节字符串时不会发疯。没有标准的整数类型可以容纳40字节。您可以通过将数字转换为二进制并每3位读取一次来获得该数字的八进制版本实际上,1个十六进制是4位,但作为str,它是1个字节…因此,将字符串转换为一系列位,它只有20个字节
有人能告诉我如何转换成八进制并存储回字符串吗?该函数返回一个无符号长整数,因此它将返回的最大值是
8
字节,假设它在转换40
字节字符串时不会发疯。没有标准的整数类型可以容纳40
字节。您可以通过将数字转换为二进制并每3位读取一次来获得该数字的八进制版本实际上,1个十六进制是4位,但作为str,它是1个字节…因此,将字符串转换为一系列位,它只有20个字节。我相信这就是OP的意思。您能否在所需的输入/输出关系上添加更多文本,例如,您能否提供示例输入/输出?
String hexstr = "0x12AB450912AB450912AB450912AB450912AB4509";
char *endp;
strtoul(hexstr , &endp, 8);