분류 전체보기337 2차원 배열의 경우 선언 시 열은 꼭 입력해주자 int arr[][]; 와 같이 행 열 모두 입력 하지 않고 선언하면 에러가 발생한다 int arr[][3]; 이처럼 반드시 열은 꼭 입력해줘야 한다. 행은 선언시 입력하지 않아도 된다 2022. 6. 13. c++ 배열을 인자로 받는 함수는 함수의 크기를 인자로 같이 받아야한다 int odap(int arr[]) { } 만으로는 배열의 크기를 알 수 없으므로 배열을 활용할 수 없다 함수내의 자원만으로 받은 배열의 크기를 구하는 방법은 없다 배열을 받는게 아니라 그 배열의 포인터로 인자를 받기 때문이다 포인터는 시작 주소만 있고 데이터(배열)의 끝을 모르므로, c++ 에서 함수 작성시, 배열을 인자로 받을때는 아래와 같이 사용하여 int odap(int arr[], int size) 꼭 배열의 크기을 함께 입력 받도록 하자 몇시간을 해도 안됐었는데... 이런 이유였다니... 2022. 6. 13. 백준 알고리즘 10988번 - 입출력, 입력범위, stirng 이해 부족으로 인한 런타임에러 ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); 1. 입출력 속도를 올려주는 위의 경우는 알고리즘 시간초과가 된다면 그 후에 추가하여 시도할 것. 굳이 미리 사용 말자 2. string 의 길이를 구할때는 length(), 벡터의 길이를 구할때는 size()를 써야 한다 3. 문제에서 입력범위가 주어지곤한다. 입력범위는 출제자가 내는 범위이니 내 코드에는 범위 내용을 적을 필요없다. 내 코드는 입력범위가 달라지더라도 항상 올바른 로직이어야 하기 때문이다. 물론 자료형의 판단에는 반영을 해야할것이다 4. string 은 정적할당 배열이 아닌 동적할당 배열이다. 즉, string 은 벡터이다. 그러므로 할당전에는 크기를 알 수 없으며, 인덱.. 2022. 6. 13. [c++] string 동적 할당에 관하여 알고리즘 문제를 풀다 런타임에러가 나서 고민하다 질문에 대한 답변으로 깨달아서 간단하게 정리하려고한다 string 이란 int a[4] 같은 정적 크기를 가진 배열이 아니다 동적이니 string 은 사실상 백터라고 보면 된다 따라서 string 변수만 선언하고 초기화를 안한채로 아래처럼 사용하면 잘못된 코드이다 string ori; string s; cin >> s; for(int i=0; i 2022. 6. 13. 이전 1 ··· 66 67 68 69 70 71 72 ··· 85 다음