[英]How to print the address of char array
http://ideone.com/4p1gqr http://ideone.com/4p1gqr
#include <iostream>
int main(int argc, char** argv)
{
float *f = new float[10];
std::cout << f << std::endl;
std::cout << f + 3 << std::endl;
char *c = new char[10];
std::cout << c << std::endl; // no print
std::cout << c + 3 << std::endl; // no print
return 0;
}
stdout
0x2b3cbaf1bc20
0x2b3cbaf1bc2c
How to print the address of char array?如何打印char数组的地址?
You need to cast to void*
to invoke correct overload of operator <<
instead of outputting as C strings 您需要强制转换为
void*
以调用operator <<
正确重载,而不是输出为C字符串
std::cout << static_cast<void*>(c) << std::endl;
std::cout << static_cast<void*>(c+3) << std::endl;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.