inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문

[RENEWAL] 스트링 포맷

int형 변수에 0xFFFFFFFF는 왜 저장이 안되나요?

4623

김기연

작성한 질문수 10

4

제목 그대로입니다. 실수로 강의와 다르게 입력했는데 uint 형식을 int 형식으로 변환할 수 없다고 나오네요. 0xFFFFFFFF면 그냥 -1로 저장되어야 하는거 아닌가요?

C#

답변 1

9

Rookiss

int의 모든 비트가 1로 켜진 상태 (0xFFFFFFFF)라면 -1이 맞지만,
거꾸로 0xFFFFFFFF 이라는 16진수 숫자는
기본적으로 10진수로 4294967295이라는 정수입니다.
즉 int a = 4294967295; 라고 하는 것과 완전 동일한데
이 숫자는 int 범위를 벗어나기 때문에 unsigned int 로 간주되고,
unsigned int를 int 타입에다 억지로 넣으려고 하기 때문에 에러가 나는 것입니다.

참고로 C#은 이렇게 타입 변환을 엄격하게 만들어서 프로그래머 실수의 여지를 줄여주지만,
C++에서 int a = 0xFFFFFFFF;을 하면 자연스럽게 -1이 들어갑니다.

0

Pebble

안녕하세요. 잘 몰라서 질문 드립니다.

int a = 0x0FFFFFFF

short b = (short)a;

 

에서 short로 캐스팅을 해주면

앞에 것이 날라가서 0xFFFF인데 이 값은 그러면 65535 아닌가요?

어떻게 해서 -1이 들어가게 되나요?

Generic에 대한 질문 있습니다.

0

97

2

2022 버전에 커뮤니티 버전이 없는데 2026 버전으로 해도 무관?

0

203

2

다형성 캐시 문제

0

113

3

.

0

71

1

프로퍼티 강의 질문 있습니다.

0

79

1

이후 커리 질문

0

86

1

static

0

91

2

강의에는 새로운 클래스 파일을 생성하면...

0

72

1

생성자의 이름 선언

0

65

1

9:03 Divide(10 , 3) 부분 질문입니다

0

88

1

깃허브 관련 질문 있습니다.

0

239

1

비쥬얼 스튜디오 업데이트가 된건가요..? 매개변수 오류 관련 질문

0

249

1

C# 시리즈 || C++ 시리즈 자료구조 강의에 대한 질문입니다!

0

306

2

Activator 질문있습니다

0

332

1

이넘 타임 선언 질문

0

346

1

Sort 오름차순, 내림차순

0

323

1

질문 있습니다.

0

249

1

팩토리얼 문제

0

270

1

Sort함수 질문있습니다.

0

265

1

다형성 함수 질문 있습니다.

0

221

1

질문이 있습니다.

0

228

1

섹션2 연습문제 질문입니다.

0

214

1

안녕하세요~서버에 대해 질문이 있습니다.

1

283

1

텍스트 색깔이 제 편집기와 달라서 수강에 어려움이 있습니다ㅜㅜ

0

395

1