我是C的新手,並試圖編寫一個簡單的Ceaser密碼程序a-> b-> c等等。代碼編譯到目前爲止,但我得到了一個錯誤139,當我看到它時出現了一個分割錯誤。我從來沒有發生過這種情況,想知道是否有人可以看一看,看看我做錯了什麼?C代碼的分段錯誤
你好,感謝大家的幫助,139錯誤不存在了,我的更新代碼低於該作品:D。
#include <stdio.h>
int main()
{
char strg [100], ch;
int i;
printf ("Enter a string\n");
scanf ("%s" , strg);
for (i = 0; strg [i] != '\0'; ++i)
{
ch = strg[i];
if (ch >= 'a' && ch <= 'z')
{
ch = ch + 1;
if(ch > 'z')
{
ch = ch - 'z' + 'a' -1;
}
strg[i] = ch;
}
}
printf ("The string is %s", strg);
return 0;
}
'ch =&strg [i]';' - 你的編譯器沒有在這裏警告你? (這實際上是你編譯的代碼嗎?大寫R的'Return'是可疑的 –
沒有這是我編譯時得到的圖片https://gyazo.com/e811e8672213f4ebef1e9e4b4acdf239 – TylerB56
正如我懷疑:這個問題中的代碼與你編譯的代碼不一樣,你爲什麼要這樣做?請複製並粘貼實際的代碼。 –