1
我試圖在由char *
表示的句子中將大寫更改爲小寫。 我得到一個錯誤:當我使指針解引用時出現訪問衝突。字符指針取消引用
// Uppercase to lowercase
char *str = "My sentence";
*str = 'm';
我試圖在由char *
表示的句子中將大寫更改爲小寫。 我得到一個錯誤:當我使指針解引用時出現訪問衝突。字符指針取消引用
// Uppercase to lowercase
char *str = "My sentence";
*str = 'm';
原因是您使用了錯誤的格式來定義字符串。你想:
char str[] = "My Sentence";
*str = 'm';
什麼你寫定義了一個指針,然後「我句」分配給指針的內存地址。您正在收到訪問衝突,因爲您沒有在「My Sente」擁有內存,而這很可能是被引用的地址。