사용자로부터 입력받은 int가 받을 수 있는 것보다 훨씬 큰 값을
계산해야하는데 어떻게 할 지 도무지 ㅠㅠ
엄청 큰 숫자를 사용자로부터 입력 받는게 아니라면 상관없는데
사용자로부터 입력받으니까 저장해놓을 곳도 없고...
게다가 data type은 int 밖에 사용 못 하고...
해결 가능한 문제일려나요 ㅠㅠ
방방 2026.08.24 댓글 3
사용자로부터 입력받은 int가 받을 수 있는 것보다 훨씬 큰 값을
계산해야하는데 어떻게 할 지 도무지 ㅠㅠ
엄청 큰 숫자를 사용자로부터 입력 받는게 아니라면 상관없는데
사용자로부터 입력받으니까 저장해놓을 곳도 없고...
게다가 data type은 int 밖에 사용 못 하고...
해결 가능한 문제일려나요 ㅠㅠ
날개 2026.08.24
그런방법은 없습니다. 4바이트가 표현할수 있는 범위를 넘어간 값은 가리킬수 없는게 당연하죠. 문제가 정확히 뭐였는진 모르겠지만 사용자로부터 받는 입력을 다이렉트로int변수에 넣는게 조건이라면 제가 아는 지식범위에선 없는듯하네요 ㅎㅎ
한결 2026.08.24
본문에도 적었듯이 data type은 오로지 int만 사용해야 되요 ㅠㅠ
한샘가온 2026.08.24
사용자로부터 입력을 받을때는 char* 즉, 문자열형태로 받으면 int로 바로 받을필요가 없어집니다. 그럼 일단 char 버퍼의 크기만큼 전부 다 받을 수 있는것이 되겠죠.
그럼 받는것은 해결됐고 계산해야하는데... int가 가질 수 있는 범위 (2^32 개의 범위)만큼 잘라내서 atoi 등으로 변환시키고 그걸 따로 계산한 뒤 합치는 과정을 하면...되지 않을라나요? ㅎㅎ