새로새록
[c++]배열과 벡터 몇가지 본문
-배열 변수 주소 = 배열의 첫 번째 요소의 주소다.
array+0 = &array[0]
array+1=&array[1]
포인터정의시 array = p로 쉽게 표현가능하다
int * p;
p = &array[0]; //p=array 와같다.
이때 값을 출력하고 싶으면 cout<<*p;를 하고, //array, *&array, *&*&array
주소출력은 cout<<p; //cout<<&array; 로 접근시, 4바이트씩 출력값에 차이나는 걸 볼 수 있고
-2차원 배열의 크기
for(i=0, i<sizeof(array); i++) 이용하면 산출값이 더 커지는데
sizeof 연산자를 사용해보면 배열이 차지하는 전체 공간이 출력됩니다. 따라서 요소의 크기로 나눠줘야한다.
for(i=0, i<sizeof(array)/sizeof(int); i++) //sizeof(int)=4
즉
// 2차원 배열의 가로 크기 = 가로 한 줄의 크기를 요소의 크기로 나눠줌
// 차원 배열의 세로 크기 = 배열이 차지하는 전체 공간을 가로 한 줄의 크기로 나눠줌
-메모리해제: 벡터의 경우 동적할당된 배열과 비슷하게
for (int i = 0; i < n; i++)
{arr[i].clear(); } //가로 해제
arr.clear(); //세로해제
'소프트웨어융합 > 경희대 c++ 과제' 카테고리의 다른 글
[c++]11. 회문 판별 - 람다함수 (0) | 2020.07.18 |
---|---|
[c++]11. 홀수와 n*n 마방진 (0) | 2020.07.18 |
[c++]11.오름차순 정렬 함수 (0) | 2020.07.18 |
[c++]10.리스트 추가 삭제 출력 (0) | 2020.07.18 |
[c++]10. 두 벡터의 곱 max min (0) | 2020.07.18 |