当我使用字符指针指向单个字符时,它似乎最终指向了一个字符数组。这里出了什么问题?
#include <iostream>
#include <map>
using namespace std;
int main() {
char first = 'a';
char second = 'b';
char third = 'c';
map<char, char *> myMap;
myMap['a'] = &first;
myMap['b'] = &second;
myMap['c'] = &third;
cout << myMap['a'] << endl; // ends up printing 'abc' or 'cba'
system("pause");
return 0;
}
std::cout << "Hello, world!\n";
将输出H
,对于初学者来说会非常困惑。 - chrischar *
传递给一个iostream
,它会认为它是一个 C 风格的字符串。 - Oliver Charlesworth