C언어로 배열을 선언할 때는 문자열을 넣어 초기화할 수 있지만 나중에 배열명에 직접 대입을 해보면 컴파일 에러가 난다.결론부터 말하자면 이는 배열명이 해당 배열의 시작 주소를 가리키는 상수(constant)이기 때문에 다른 주소를 대입할 수 없기 때문이다. 1. 초기화(Initialization) vs 대입(Assignment)C 언어에서 = 연산자는 문맥에 따라 완전히 다른 의미를 갖는다.1️⃣선언 시 초기화: char ch[] = "ABCDEF";이 구문은 변수를 생성함과 동시에 값을 채우는 과정이다.컴파일러는 다음과 같은 작업을 수행한다.메모리(스택 영역)에 7바이트(문자 6개 + NULL) 크기의 공간을 확보한다.확보한 공간에 ch라는 이름을 붙인다.해당 공간에 'A', 'B', 'C', 'D',..