簡體   English   中英

如何打印char數組的地址

[英]How to print the address of char array

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

如何打印char數組的地址?

您需要強制轉換為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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM