#include
#include
using namespace std;
ostream&operator p)
{
oposl;
posl.insert(pair("one", 1));
posl.insert(pair("two", 2));
posl.insert(pair("three",3));
posl.insert(pair("four",4));
posl.insert(pair("five", 5));
posl.insert(pair("six", 6));
posl.insert(pair("seven",7));
posl.insert(pair("eight",8));
posl.insert(pair("nine", 9));
posl.insert(pair("ten", 10));
map::iterator i;
char c[5];
cin>>c;
i=posl.find(c);
cout("one", 1));的意思是把"one"常量的字母'o'的位置与1配对插入posl,2.char c[5];表示另外申请一个变量(地址肯定和"one"常量的地址不相同嘛),直接写c表示字符串首字母的地址3.i=posl.find(c);这时候寻找的是posl中char*类型的变量(也是地址)和字符串c的地址相同的某对元素(这当然不存在。根本没有去比较字符串,而是去比较其地址去了)针对这个问题使用class string吧第二个问题,char c[5];就算是你有方法用char*解决问题,这个变...
|