sql 내부에서도 데이터타입이 int형이고
c++에서도 int형인데
왜 smallint형의 범위가 벗어나면 오버플로가 날까요?
Comment 2
-
anonymous
2018.08.06 09:20
-
anonymous
2018.08.06 09:34
해결했습니다. 왜 그런지 모르겠는데 smallint형의 범위를 벗어나는 값들이 long형으로 넘어오는데
예외 설정이 안되어있어서 short형에 저장된 값을 입력해서 제 int형 변수에 저장했기 때문에 오버플로가 나는거였군요.
참고로 덧붙이자면 키값들을 벡터에 저장해서 받아왔는데,
*iter에는 오버플로가 난 값, 즉 - 머시기머시기가 나왔구요,
실제로 값에는 42억이 넘는 값이 들어갔습니다.