这是场景;
// I have created a buffer
void *buffer = operator new(100)
/* later some data from a different buffer is put into the buffer at this pointer
by a function in an external header so I don't know what it's putting in there */
cout << buffer;
我想打印出在这个指针处放入缓冲区的数据,看看里面有什么。我想把它打印为原始 ASCII,我知道那里会有一些不可打印的字符,但我也知道一些清晰的文字被推到那里。
根据我在 Internet 上阅读的内容,cout
无法打印出未转换的数据,例如 a void
,而不是int
or char
。但是,编译器不会让我使用(char)
例如动态转换它。我应该创建一个单独的变量,将值转换为指针然后cout
该变量,还是有一种方法可以直接保存在另一个变量上?