C++ 컴파일 되는 오류 size_t, int 연산
예전에 Java로 알고리즘을 공부하고 이번에 C++로 새로 코딩테스트를 준비하고 있는데정말 답답한 문제가 생겼다. 문제for(int i = 0; i 공원 빈자리에 필 수 있는 가장 큰 돗자리를 구하는 문제였다.돗자리 크기가 공원 배열 사이즈 보다 크더라도 조건문을 만족하는 줄 알았다.왜냐하면 0 하지만 내가 생각한 데로 프로그램이 돌아가지 않았다. vector의 크기를 반환하는 size() 메서드는 size_t 자료형이었다.그래서 부등식 우항이 항상 0보다 크거나 같게 돼버렸다.자동으로 sizt_t로 형변환이 일어난 것이었다. 해결for(int i = 0; i 명시적으로 int형으로 변환하니 생각한 데로 문제가 해결되었다. size() 메서드가 size_t타입을 리턴하고 size_t타입은 음수가 없다..
C,C++
2024. 11. 2. 14:57