0
我正在創建一個程序,將單詞的第一個字母放在單詞的後面,以便「單詞」將變成「ordW」,並且我已經完成了這項工作,但是當我決定放置該功能變成一個類它不起作用,我得到訪問衝突寫入位置我不知道它有什麼問題,我會顯示類代碼和原始代碼:使用指針寫入位置的訪問衝突
類代碼:
void Checking::test(char* first,char* buffer){
back = first;
if (first != buffer + strlen(buffer) - 1){
++back;
temp = *first;
*first = *back;
*back = temp;
++first;
test(first, buffer);
}
}
注:變量「後退」和「溫度」是在類的頭,像這樣宣稱:
Char* back = NULL;
Char temp = NULL;
原始代碼:
void test(char* first, char* buffer){
char* back = first;
if (first != buffer + strlen(buffer) - 1){
++back;
char temp = *first;
*first = *back;
*back = temp;
++first;
test(first, buffer);
}
}
我不知道使用相同的功能,但在一個類中時,爲什麼我收到錯誤。如果有人發現錯誤,他們可以解釋爲什麼我得到錯誤以及如何解決,謝謝。
我會在這種情況下使用調試器。 – user877329
「'char temp = NULL;'」。你爲什麼要這樣做? –
在課堂上如何聲明'test'? – laune