[C++] 6.12 동적 할당 배열
by #독개#/*
정적(할당)배열은 컴파일 단계에 배열의 사이즈가 결정되어 있어야(const로)만 사용할 수 있었다
즉 cin이런걸로 받거나 하지 못햇다
동적(할당)배열은 런타임에 배열의 사이즈를 결정하므로 유동적으로 사용가능
*/
#include <iostream>
using namespace std;
int main()
{
int length;
cin >> length;
//int* array = new int[length]; //이렇게하면 내가 assign해준것 외에는 다 쓰레기값을 받아옴
int* array = new int[length](); //뒤에()를 붙여줌으로써 할당해준것 외에는 다 0
//int* array = new int[length]{1,2}; //이렇게 유니폼이니셜라이징 해줘도 나머진다 0으로해준다
array[0] = 1;
array[1] = 2;
for (int i = 0; i < length; ++i)
{
cout << (uintptr_t) & array[i] << endl;
cout << array[i] << endl;
}
delete[] array;
///---------------------------------------------------------------
/*
int array[] = { 1, 2, 3 }; 이렇게 정적배열에서는 [ ] 사이를 비워놔도 뒤에3개의 값을보고 컴파일러가 자연히 int array[3];을 결정해준다
하지만 동적배열선언에서는 컴파일러가 결정하지 않기때문에 []사이를 비워두면 안된다 오류발생
*/
///---------------------------------------------------------------
/*
resizing이 될까 우선 정적배열은 크기를 바꿀수가없다
동적배열은 다른 더큰 메모리를 동적할당 받아서 기존것을 복사하면된다
*/
}
🐱👓독하게 개발
'🔥 프로그래밍 학습 > C++' 카테고리의 다른 글
[C++] 6.13 const 포인터 , 포인터 const (0) | 2022.11.16 |
---|---|
[C++] 6.13 포인터와 const (0) | 2022.11.15 |
[C++] 6.11 동적 할당 new와 delete (0) | 2022.11.15 |
[C++] 6.10 C스타일의 문자열 심볼릭 상수, cout 문자열주소출력 (0) | 2022.11.15 |
[C++] 6.8 포인터와 정적 배열은 같다 (0) | 2022.11.15 |
블로그의 정보
독한 개발자
#독개#