int a = static_cast<int>((1u << (sizeof(int)*8-1)) - 1);
일단 결과적으로 만든 건 이건데
1<<31을 해버리면 1이 int라서 저거 min값이 되버림
1u를 달아줬다 다시 캐스팅해줘야..
그리고 int가 4바이트라는 보장이 없어서 sizeof(int)*8-1이렇게 바꿔줘야하고
다시 int로 캐스팅해줘야함
사실 내가 입만 산 병신이라 그런 듯..
int a = static_cast<int>((1u << (sizeof(int)*8-1)) - 1);
일단 결과적으로 만든 건 이건데
1<<31을 해버리면 1이 int라서 저거 min값이 되버림
1u를 달아줬다 다시 캐스팅해줘야..
그리고 int가 4바이트라는 보장이 없어서 sizeof(int)*8-1이렇게 바꿔줘야하고
다시 int로 캐스팅해줘야함
사실 내가 입만 산 병신이라 그런 듯..
4바이트라는 보장이없는데 sizeof(int)*8-1은 왜 31인가양
1바이트도 8비트가 아닐수있음여
아 4바이트라는 보장이없으니 비트로 한다 이거군요!
MAX_INT가 짱임
저런거 구하지 말고 그냥 INT_MAX 써. C++이면 numeric_limits<int>::max() 써도 되고.