c언어에서 배열의 이름은 자동적으로 배열 첫번째 index의 주소로 자동형변환 된다고 알고있는데
그럼 원래 배열의 이름은 뭘 의미하나요.
c언어 처음 개발하신분은 (데니스 리치였나?) 왜 이런 직관적이지 못한 방법을 도입하신거죠?
내년에 컴공 들어가는김에 c언어 예습중인데 넘 어렵네요
c언어에서 배열의 이름은 자동적으로 배열 첫번째 index의 주소로 자동형변환 된다고 알고있는데
그럼 원래 배열의 이름은 뭘 의미하나요.
c언어 처음 개발하신분은 (데니스 리치였나?) 왜 이런 직관적이지 못한 방법을 도입하신거죠?
내년에 컴공 들어가는김에 c언어 예습중인데 넘 어렵네요
제발 예습말고 운동해서 섹스라이프나 즐기다 군대가
메모리 구조를 아는게 우선일듯
원래 그런거임
글고 꽤 직관적이지 않나
줄줄이 비엔나를 3개를 늘어놨어, 한개에 4센치라고하자, 전체길이는 4*3=12 센치겠지.. 비엔나[0], 비엔나[1], 비엔나[2], 순이야,
줄줄이 비엔나 옆에 자를 대놨다..... 첫번째 비엔나 시작위치가 비엔나[0] 의 위치는 0 이고, 비엔나[1] 위치가 4 고 비엔나[2] 위치가 8 이겠지
전체를 가리킬때는 [] 빼고 비엔나 라고 부른다. 비엔나의 시작위치는 어디냐?
생각할 시간을 준다. 생각해보도 답해봐라
그럼 배열의 이름이 배열의 시작위치를 가리키는 건가요?
뭔 자꾸 배열 이름타령이야
sizeof을 썼을때 배열전채의 크기가 나오니까 그러면 배열 그자체를 사실은 나타내는건데
printf %p, arr 이렇게 썻을땐 그냥 배열의 첫번째인덱스 주소로 형변환되는거구?
첫번째인덱스 주소가 배열 주소임 위에 비엔나 댓글 봐라
원래 배열 이름이 배열 시작 주소임
ㅇㅎ 그렇군요.... sizeof 사용할때는 당연히 배열의 첫번째 인덱스랑 다르게 나와야 하는거구