今天在做一些网络上的练习题的时候
做到一半,发生一个意外发现的东西
(可能对大家来说不怎么意外)
就是像这样
http://i.imgur.com/9evArsJ.jpg
程式执行完成
http://i.imgur.com/oAnF4m2.jpg
我想请教的是,在倒数第二行程式码
cout << &code [i];
这样的写法是正常的写法,还是我运气好,如果是正常的,那他代表的是什么意思呢??
我想要的用这样的用意是把string里面的"+"去除,还是有其他更简便或是更好的方式?
另外再请教一个问题,string的内存位址是不是只有一个,因为string看作一个整体,跟字符的每个元素都有一个内存位址是不一样的?
谢谢大家
补上code:
#include <iostream>
#include <string>
#include <math.h>
#include <cstring>
using namespace std;
void code(){ //未完成,无须介意
}
int main()
{
string code,decode,originalcode;
int i=0 ;
cout << "If you wanna coding,add '+' in the title" << endl << endl ;
cout << "If you wanna decoding , please add '-' int the title" << endl
<<endl ;
cout << "Please type your content : " << endl << endl ;
getline(cin,originalcode);
if (originalcode[0]== '+')
{
for(i=0;i<originalcode.length();i++)
{
originalcode[i] = originalcode[i]+3; //注1
}
code = originalcode;
}
else if (originalcode[0]== '-')
{
decode = originalcode; //这部份还未完成
}
else
{
cout << "wrong content";
}
cout << &code[1]; //注2
return 0;
}