[問題] 在輸出字串時在前面加上&
今天在做一些網路上的練習題的時候
做到一半,發生一個意外發現的東西
(可能對大家來說不怎麼意外)
就是像這樣
http://i.imgur.com/9evArsJ.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;
}
---------------------------------------------------
這個程式是網路上看到的練習題,內容是類似加密跟解密
當字串[0]="+"時加密 or ="-"時解密,其實就是英文數字往後加3位拉呵呵= ="
所以當我輸入"+fire"的時候,cout必須是"iluh",字串內的每個字元都向後移三位
同時把加號去除,我原本是在"註1"的地方用code[i] = originalcode[i+1],但是編譯
不過,而且好像是犯了十誡裡面某一條,類似不能i=i++的樣子,然後又嘗試了strcpy
strnpy等等分割字串的函式,又因為函式裡面所需要輸入的數值必須是常數
所以想說先從cout下手,也就是"註2"的地方,運氣好變成現在的code
所以想上來請教一下,這樣子cout << &code[1] 這個部份
不是輸出code[1]的記憶體位址所儲存的值嗎? 但是我尚未宣告任何指標呀?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 49.215.51.59
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1459756038.A.BD6.html
→
04/04 15:48, , 1F
04/04 15:48, 1F
→
04/04 16:55, , 2F
04/04 16:55, 2F
推
04/04 16:58, , 3F
04/04 16:58, 3F
→
04/04 16:58, , 4F
04/04 16:58, 4F
→
04/04 16:59, , 5F
04/04 16:59, 5F
→
04/04 16:59, , 6F
04/04 16:59, 6F
→
04/04 16:59, , 7F
04/04 16:59, 7F
→
04/04 16:59, , 8F
04/04 16:59, 8F
我當然不會啊XDDDD,想學才自己找資料看,自己試,見笑了
→
04/04 17:01, , 9F
04/04 17:01, 9F
我有看過置底文,但是不太確定我犯了什麼錯誤,能否請教一下呢?
→
04/04 17:13, , 10F
04/04 17:13, 10F
※ 編輯: tmdggyygan (49.215.51.59), 04/04/2016 18:41:01
※ 編輯: tmdggyygan (49.215.51.59), 04/04/2016 18:46:20
→
04/04 20:58, , 11F
04/04 20:58, 11F
推
04/04 20:59, , 12F
04/04 20:59, 12F
→
04/04 21:00, , 13F
04/04 21:00, 13F
→
04/04 21:01, , 14F
04/04 21:01, 14F
→
04/04 21:02, , 15F
04/04 21:02, 15F
→
04/04 21:02, , 16F
04/04 21:02, 16F
→
04/04 21:14, , 17F
04/04 21:14, 17F
→
04/04 21:14, , 18F
04/04 21:14, 18F
謝謝大家的回答,我開電腦把code放上來
※ 編輯: tmdggyygan (49.215.51.59), 04/04/2016 22:04:57
※ 編輯: tmdggyygan (49.215.51.59), 04/04/2016 22:35:46
→
04/04 22:40, , 19F
04/04 22:40, 19F
→
04/04 22:41, , 20F
04/04 22:41, 20F
→
04/04 22:41, , 21F
04/04 22:41, 21F
→
04/04 22:46, , 22F
04/04 22:46, 22F
→
04/04 22:46, , 23F
04/04 22:46, 23F
→
04/04 22:47, , 24F
04/04 22:47, 24F
→
04/04 22:47, , 25F
04/04 22:47, 25F
→
04/04 22:50, , 26F
04/04 22:50, 26F
→
04/04 22:50, , 27F
04/04 22:50, 27F
→
04/04 22:51, , 28F
04/04 22:51, 28F
→
04/04 22:52, , 29F
04/04 22:52, 29F
→
04/04 22:53, , 30F
04/04 22:53, 30F
→
04/04 22:54, , 31F
04/04 22:54, 31F
→
04/04 22:54, , 32F
04/04 22:54, 32F
推
04/05 00:49, , 33F
04/05 00:49, 33F
→
04/05 00:53, , 34F
04/05 00:53, 34F
推
04/05 01:13, , 35F
04/05 01:13, 35F
感謝解答,對我幫助很大,受教了
→
04/05 02:23, , 36F
04/05 02:23, 36F
→
04/05 02:25, , 37F
04/05 02:25, 37F
→
04/05 02:30, , 38F
04/05 02:30, 38F
→
04/05 02:44, , 39F
04/05 02:44, 39F
→
04/05 02:45, , 40F
04/05 02:45, 40F
對!因為我想說&這個取址運算子應該只有我有用指標才會用得到,怎麼會在我沒有宣告指標的情況下出現不一樣的功能,感謝解答
推
04/05 04:40, , 41F
04/05 04:40, 41F
→
04/05 04:41, , 42F
04/05 04:41, 42F
→
04/05 04:44, , 43F
04/05 04:44, 43F
→
04/05 04:48, , 44F
04/05 04:48, 44F
→
04/05 04:49, , 45F
04/05 04:49, 45F
→
04/05 05:02, , 46F
04/05 05:02, 46F
→
04/05 05:03, , 47F
04/05 05:03, 47F
→
04/05 05:04, , 48F
04/05 05:04, 48F
→
04/05 05:04, , 49F
04/05 05:04, 49F
→
04/05 05:05, , 50F
04/05 05:05, 50F
→
04/05 05:06, , 51F
04/05 05:06, 51F
→
04/05 05:13, , 52F
04/05 05:13, 52F
→
04/05 05:14, , 53F
04/05 05:14, 53F
→
04/05 05:15, , 54F
04/05 05:15, 54F
→
04/05 05:15, , 55F
04/05 05:15, 55F
→
04/05 05:20, , 56F
04/05 05:20, 56F
→
04/05 05:22, , 57F
04/05 05:22, 57F
另外再次感謝回答的ko大以及tw大,受益良多,人間有溫暖,處處有溫情XDDDD
amazing!!wei大解決了另外的一個問題,又幫我科普了字串的一些運作模式,這些寶貴的經驗是書上跟網路上查不到的,謝謝您
※ 編輯: tmdggyygan (49.215.51.59), 04/05/2016 07:45:54
※ 編輯: tmdggyygan (49.215.51.59), 04/05/2016 07:46:56
※ 編輯: tmdggyygan (49.215.51.59), 04/05/2016 07:52:08
※ 編輯: tmdggyygan (49.215.51.59), 04/05/2016 07:53:35
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章