以下に、文字の配列の2つの文字を交換する単純な関数があります。ただし、「Bla.exe の 0x01151cd7 で未処理の例外: 0xC0000005: アクセス違反の書き込み場所 0x011557a4」が発生します。エラー。2 つのインデックス (左と右) は、配列の制限内にあります。私は何を間違っていますか?
void swap(char* s, int left, int right) {
char tmp = s[left];
s[left] = s[right];
s[right] = tmp;
}
swap("ABC", 0, 1);
アンマネージ C/C++ で VS2010 を使用しています。ありがとう!