Int, Int32 및 Int64 Int16 차이가 뭘까?

Int 는 어떤 차이가 '', '', '' 이외의 '와' System.Int64 System.Int16 System.Int32 규모와?

해결책

각 유형의 정수 에 다른 다양한 스토리지 용량

   Type      Capacity

   Int16 -- (-32,768 to +32,767)

   Int32 -- (-2,147,483,648 to +2,147,483,647)

   Int64 -- (-9,223,372,036,854,775,808 to +9,223,372,036,854,775,807)

제임스 서덜랜드) 에 명시된 대로 [그의 답변은] [1]:

&gt. '이' int '와' Int32 랑하니 동의어입니다. int '' 조금 더 받을 수 있다. &gt. 그 해 ',' 더 익숙한 보았으매 Int32 브리트니스 32tb 명시성 &gt. 판독값 코드에. 난 그냥 사용하는 경향이 있는 약간만이라도 int 합니다. &gt. # 39, & # 39, 크기가 중요한 위치에 있는 integer& Int32 ',' (암호화 코드, &gt. # 39 의 안전하다구요 확대하려면 it& 알 수 있는 구조) 그래서 향후 유지 관리자 &gt. '하지만' 변수 int '필요한 경우 변경' Int32 잘있게나 합니다. &gt. 같은 방법으로. &gt. &gt. 결과 코드는 동일하게 됩니다. 순수하게 차이는 중 하나를 &gt. 또는 코드 가독성을 모양.

[1]: # 62555 https://stackoverflow.com/questions/62503/c-int-or-int32-should-i-care/62555

해설 (7)

다음은 유일한 실제 크기 차이. 모든 정수 값을 갖고 있는 다양한 크기의 서명됩니다 int 유형은상위 볼 수 있습니다.

  • 'Int16': 2 바이트
  • 'Int32' 와 'int': 4 바이트
  • 'Int64': 8 바이트

작은 차이가 있어 한 가지 일 '과' Int64 32 비트 플랫폼 할당 충족되었으며 'Int64 미삭 보장받을 수 없는' 저장 위치 () 이다. 모든 것이 보장된 구성요소는 다음과 같다.

해설 (1)
  • int *

C # 에서 정의된 컴포지션이 원시 자료형.

이는 Int32 매핑됨 프클) 의 유형:.

값을 나타내는 것이 유형 및 System.Int32 구조체입니다.

이 32 비트 서명됨 오래 걸립니다.

이 회사는 최소 값을 최대 - 2147483648, +2147483647.

  • Int16*

컴포지션이 프클 유형:.

, 는 C # 의 파선-짧은 매핑됨 Int16.

값을 나타내는 것이 유형 및 System.Int16 구조체입니다.

서명됨 및 정보기술 (it) 는 16 비트.

이 회사는 최소 - 32768 및 최대 +32767 값입니다.

  • Int32*

컴포지션이 프클 유형:.

C # 에서 int , 는 매핑됨 Int32.

값을 나타내는 것이 유형 및 System.Int32 구조체입니다.

이 32 비트 서명됨 오래 걸립니다.

이 회사는 최소 값을 최대 - 2147483648, +2147483647.

  • Int64*

컴포지션이 프클 유형:.

, 는 C # 의 긴 매핑됨 Int64.

값을 나타내는 것이 유형 및 System.Int64 구조체입니다.

서명됨 및 정보기술 (it) 는 64 비트.

이 회사는 최소 - 9,223,372,036,854,775,808 및 최대 9,223,372,036,854,775,807 값입니다.

해설 (1)

제프리 따르면 & # 39 리히터 (.NET framework 의 투고자 중 개발), C # & # 39, & # 39 의 책을 통해 CLR:

int 는 primitive type C # 은 컴파일러와의 Int32 허용하는 반면, 프레임워크 클래스 라이브러리 유형 (support. 언어 간에 그 규범을 CLS). 사실, int 인해 Int32 컴파일하는 동안.

또한

&gt. 그러나 C #, 긴 매핑됨 System.Int64 다른 프로그래밍 &gt. 언어, 긴 매핑됩니까 Int16 또는 Int32 수 있다. 사실 C++/CLI 가 &gt. 치료를 한 Int32. &gt. &gt. 실제로 대부분의 (.NET) 언어 치료를 해도 won& 키워드와 won& # 39, t, t # 39 한 &gt. 사용하는 코드가 컴파일하십시오 거잖나.

나는 이 작가, 그리고 더 많은 것을 볼 수 있는 언어의 표준 .NET 브로셔등 프클 유형 (즉, Int32) 를 중심으로, 프리미티브 유형 (즉, int) 등 상호 운용성 문제가 발생할 수 있습니다.

해설 (0)

아무것도아니야. 는 그들의 유일한 차이점은 유형을 크기 (and, 그래서 그들이 범위의 값을 나타낼 수 있다).

해설 (0)

매우 중요한 참고 있는 16, 32 비트 및 64 유형:

실행하십시오 경우 질의입니다. 라이드리네쇼프 ([] {1.2,3}, 새로운 Int16 1)

예를 들어, 틀렸다니까 afaq 제로 (0) 수 있기 때문에 요구하고 있다. 1, 2 또는 3 가 1 일 내에 어레이입니다. 정답으로 나타날 경우 - 1, 1, 2 또는 3 어레이입니다 무슨뜻이냐믄 1 들지 않습니다.

내가 잘 체크아웃해야 찾았습니다. 모든 것이 아니라 다음 제공하십시오 0 - 1 (I& # 39, ve 테스트되었습니다 버전 2.0, 3.0, 3.5, 4.0 이 모든 프레임워크입니다)

C #.

Array.IndexOf(new Int16[]{1,2,3}, 1) = -1 (not correct)
Array.IndexOf(new Int32[]{1,2,3}, 1) = 0 (correct)
Array.IndexOf(new Int64[]{1,2,3}, 1) = 0 (correct)

VB.NET:

Array.IndexOf(new Int16(){1,2,3}, 1) = -1 (not correct)
Array.IndexOf(new Int32(){1,2,3}, 1) = 0 (correct)
Array.IndexOf(new Int64(){1,2,3}, 1) = -1 (not correct)

그래서 제 말은, 라이드리네쇼프 대한 비교, 전용 의탁하도록 Int32!

해설 (6)

편집: # 39 이 isn&, t, 내가 이 질문을 할 때 상당히 진정한 C # 에 대한 태그 누락했습니다 - C #, 제발 투표 좀 더 구체적인 답변을 답변됨 경우 해당 대신!

  • 그들은 모두 정수 숫자를 나타내는 다양한 크기의.

39 아주 작은 차이, 그러나 there& 한다.

int16, int32 및 int64 모두 fixed 크기.

C 의 경우 int 의 크기를 따라 아키텍처입니다 컴파일하기를 사양명세 국한됨 정의할 수 있지만, 실제로 it& 같거나 큰 int 로 짧은 # 39 의 너비입니다 프로세서입니다 you& # 39, 32bit 확장하지만 않을 수 있습니다, 이는 probably 대상으로 하고 있다는 걸 알아야 한다.

해설 (3)
  1. '한' 이 '와' int32 int 와 동일한 (32 비트 정수)
  2. '는' int16 파선-짧은 int (2 바이트 또는 16 비트) 긴 데이터 형식 (8 바이트 또는 64 비트) '는' int64 3.
해설 (4)

그러나 그들은 모두 내가 찾은 작은 차이는 실로 그 가치가

  1. '' 이넘 '' Int32 만들 때 사용할 수 없습니다.
enum Test : Int32
{ XXX = 1   // gives you compilation error
}

enum Test : int
{ XXX = 1   // Works fine
}
  1. '에서' 그때그들은 Int32 시스템 선언. 컴파일 오류 '아닌' 우싱.시스템 제거하면 경우 int '대한' 경험할 수 있습니다.
해설 (0)

int = Int32 &gt &lt p&gt -;;; 당초 기절해있는 유형 &lt p&gt &gt Int16 -;;; 당초 int &lt p&gt &gt Int64 -;;; 64 비트 시스템을 후 사용할 수 있게 된 새로운 데이터 유형 &lt p>; &lt p&gt &quot int";;; 하위 호환성을 대해서만 사용할 수 있습니다. 정말 우리 프로그램을 사용하여 만들 수 있어야 한다며 새 int 유형은상위 더 정확합니다. &lt p>; &lt p> -;

,, 한 번 더 &lt p&gt &lt b&gt thing&lt /b&gt. 길을 따라 건 물론, 비슷한 이름이 '클래스' 는 Int Int16 Int32 및 Int64 없다. '온' 정수 '에 대해 모든 도움됐네 같은 기능을 트레이퍼스 Int32.TryParse'.

&lt p>;

해설 (0)