-1
我有以下代碼。爲什麼訪問衝突寫在內存位置
1 #include <stdio.h>
2 #include <string.h>
3
4 void encryptString2(char *encryptedString)
5 {
6
7 while (*encryptedString)
8 {
9 *encryptedString = *encryptedString^31;
10 printf("Encrypted Character : %c\n", *encryptedString);
11 encryptedString++;
12 }
13}
14
15 int main(int argc, char* argv[])
16 {
17 char *inputString = "Nahid";
18 printf("Input string : %s\n", inputString);
19 encryptString2(inputString);
20 printf("Input String : %s\n", inputString);
21 }
當我編譯視覺工作室行9導致問題。它顯示
Unhandled exception at 0x000B1AA4 in Page_182.exe: 0xC0000005: Access violation writing location 0x000B5C40.
任何人都可以解釋爲什麼會出現此錯誤,以及如何解決這個問題? 在此先感謝。
'焦炭inputString [] = 「Nahid」;'不要試圖改變字符串字面。 – BLUEPIXY