여기에 XOR 연산을 사용하여 두 문자를 문자열로 바꾸려고합니다. 그러나 GCC 컴파일러는 나를 segmentation fault
으로 던졌습니다.두 문자에 대한 XOR 연산
#include <stdio.h>
#include <stdlib.h>
int main()
{
char *str = "welcome";
str[0] = str[0]^str[1]; // Segmenation fault here
str[1] = str[0]^str[1];
str[0] = str[1]^str[0];
printf("%s", str);
return 0;
}
그런데 컴파일러는 "사용자에게 세그먼트 오류를 던지지"않습니다. 그것은 런타임에 발생합니다. –