질문 하나만 드릴게요 문자열관련 개념문의
오미자
2023.04.01
#includestdio.h
#includestring.h
char* str1=Hello!;
int main()
{
char str2[7];
strcpy(str2,str1);
printf(str1 : %s \n, str1);
printf(str2: %s \n, str2);
if(str1==str2)
printf(str1과 str2는 같습니다 \n);
return 0;
}
제가 배우기론 처음에 hello! 라고 문자열의 주소를 str1에 넣는거잔아요
이걸 str2에 복사햇는데요
효율화를 위해서 컴파일햇을때
문자열이 같을경우 같은 주소를 같는 걸로 아는데
이게 아닌가요?
-
늘솔길
str1은 const char *str1과 같고 str1은 변경될 수 없는 상수입니다.
반면에 str2는 변경될 수 있는 변수입니다.
둘은 서로 다른 위치에 존재합니다.