자료형 플로트는 더블 자료형으로 나눠도 오류가 발생하지 않는 이유가 뭘까요?



exp 가 플로트 자료형이고 뒤에 더블인데 나누기 했는데 이게 오류가 안나오는데 혹시 제가 비쥬얼 스튜디오 코드를 쓰고있어서 그럴까요??
답변 2
1
안녕하세요!
C# 규칙상으로는 float 변수에 double 값을 바로 대입할 수 없기 때문에,
exp = exp / 3.13589130580913; 같은 코드는 원래 컴파일 오류가 나야 정상입니다.
리터럴 3.13589130580913은 f 접미사가 없으니까 double 타입으로 인식되고,
연산 과정에서 exp도 자동으로 double로 승격됩니다.
결국 계산 결과는 double이 되는데, 이걸 다시 float에 넣을 때는
명시적 캐스팅((float))이 필요합니다.
그런데 VS Code에서 오류가 안 보인다면, 그건 C# 확장(OmniSharp)이나 타입 분석 기능이
제대로 작동하지 않고 있어서 그런 것 같습니다.
VS Code는 경고나 오류를 표시만 안 하는 경우가 있을 뿐, 실제로 C# 컴파일러 규칙이 바뀐 건 아닙니다.
빌드해보면 여전히 오류가 나오는 걸 확인이 가능하실겁니다.
정리하면,
‘VS Code라서 오류가 안 나는 게 아니라, VS Code가 오류를 표시하지 못하고 있는 것’입니다.
정상적인 C# 컴파일러라면 명시적 캐스팅 없이는 에러가 떠야 맞습니다.
ResourceManager 클래스 관련 질문
1
25
2
FBX chan 모델
0
16
1
크레딧 충전
0
32
1
수업자료 관련
0
24
1
첨부된 수업자료와 강의 내용이 다릅니다.
0
39
2
몬스터 HP 게이지바 이동
0
20
1
TextMeshPro용 커스텀 한글 2350자.txt 파일은 어디에 있나요?
0
22
1
02-02 NavMesh 응용 캐릭터 멈춤 문제
0
33
1
02-02 NavMesh 응용 캐릭터 멈춤 문제
0
41
2
비주얼 스튜디오 2026
0
39
2
C#에서의 RAII
0
64
3
public string Title { get; set; } 에서 WFO1000 오류가납니다.
0
42
1
Scene 뷰에서 Enemy Entity가 보이지 않는 문제
0
47
2
Lessons 3 & 4 don't have subtitles unfortunately
0
39
1
고민이있습니다
0
54
1
클로드코드 + 유니티 컨텐츠만들기 응용에 대하여 질문드립니다.
0
67
1
강의자료 누락
0
72
1
매니저 관련 질문이 있습니다.
0
69
2
도메인, IRIS
0
85
1
빌드 파일 제출 기한
0
107
2
마지막 주 수업은 언제 업로드 되는 건가요?
0
72
1
11월 30일 강의업데이트가 안되어 있네요.
0
59
2
맥에서는 비쥬얼스튜디오 2022 지원을 안하네요;;
0
100
3
영상관련
0
80
1





