打印出c字符串元素的地址,需要将取地址符号(&)进行静态类型转换为(void*),或者使用static_cast<void*>()进行转换。
const char* p = "abcdefg";
char p_arr[8] = "abcdefg";
string b;
b.assign(p_arr, 3);
cout << "string b = " << b << endl;
cout << "p's address = " << (void*)&p_arr[0] << endl;
cout << "b's address = " << static_cast<void*>(&b[0]) << endl;