어제 나는 수제 "strcpy"기능에 약간 문제가있었습니다. 그래도 작동하지만 조금 혼란 스러워요!배열과 포인터의 차이
char* a = "Hello, World!"; //Works
char b[] = "Hello, World!"; //Works also
strcpy(a, "Hello!"); //Segmentation fault
strcpy(b, "Haha!!"); //Works..
차이점은 무엇입니까? 왜 char 포인터는 "Segmentation fault"를 야기합니까?
왜 이런 식으로 작동합니까? :
char* a = "Haha"; //works
a = "LOL"; //works..
이것은 C 부분 집합에 관한 것이기 때문에 C++ 태그를 제거했습니다 (심지어 거기서도'strcpy'를 직접 구현하지 않을 것입니다). –
C FAQ의이 섹션을 읽으십시오 : http : //c-faq.com/aryptr/aryptr2.html – Claudio
@honk 예, 의미가 있습니다 –