字符串数组和指针

String Arrays and Pointers

本文关键字:指针 数组 字符串      更新时间:2023-10-16
string *p1 = new string(“hello”);
string *p2 = new string(“world”);
string *p3 = new string(“!!!”);
cout << p1 << ‘ ‘ << p2 << ‘ ‘ << p3 << endl; // print: 0xffa0 0xffb1 0xffd5
string *m[3] = {p1, p2, p3}; // Σημείωση: 32bit αρχιτεκτονική
cout << m; // print: 0x1000
cout << _____m[_____]; // print: 0xffb1 (1 μονάδα)
cout << &m[1]; // print: ___________________ (1 μονάδα)
cout << _____m[_____]; // print: !!! (1 μονάδα)
cout << _____m; // print: hello (1 μονάδα)
cout << &*m[1]; // print: __________________ (1 μονάδα

我无法弄清楚发生了什么,我的输出都是参考而不是值!这是一个古老的最后练习,我必须填补每一个空白,以获得他告诉我的价值。

cout << p1 << ‘ ‘ << p2 << ‘ ‘ << p3 << endl

你打印出指针,指针(本质上(是它们指向的变量的地址。

cout << *p1 << ‘ ‘ << *p2 << ‘ ‘ << *p3 << endl

可能会做这个伎俩。

推荐的快速文献:这

cout <<p1 <<' ' <<p2 <<' '

' <<p3 <<endl; 只需键入 cout<<p1 将始终指向引用,要获取值,请使用取消引用运算符 * 如 cout<<*p1