C 및 C++에서 컴파일러는 숫자 끝에 'l'을 붙여 'long'이라고 말할 수 있습니다. 예 : long x = 0l;숫자를 바이트로 변환하는 방법은 무엇입니까?
어떻게 C# 컴파일러에 숫자가 바이트인지 알 수 있습니까?
C 및 C++에서 컴파일러는 숫자 끝에 'l'을 붙여 'long'이라고 말할 수 있습니다. 예 : long x = 0l;숫자를 바이트로 변환하는 방법은 무엇입니까?
어떻게 C# 컴파일러에 숫자가 바이트인지 알 수 있습니까?
C# language specification에 따르면 문자 바이트를 지정하는 방법은 없습니다 : 당신이 객체의 바이트를 저장하려면
당신은 캐스팅해야합니다. 바이트를 얻으려면 바이트로 캐스트해야합니다. 최선의 방법은 다음과 같이 16 진수로 지정하고 캐스트하는 것입니다.
byte b = (byte) 0x10;
'(byte)'캐스팅이 "no-op"입니까? 아니면 적어도 * 시간이 필요하다는 사실입니까? – Pacerier
byte b = (byte) 123;
byte b = 123;
이 같은 일을하더라도. 당신이 경우에
int a = 42;
byte b = (byte) a;
정수 리터럴은 int에서 byte로 암시 적으로 변환되므로 number 앞에 cast를 넣지 않아도됩니다. 어떤 사람이 위의 예에 대한 논리를 놓친 경우. –
MSDN은 implicit conversion을 사용합니다. byte type suffix이 표시되지 않지만 명시 적 형변환을 사용할 수 있습니다. 난 그냥 2 자리 16 진수 정수 (int) 상수를 사용하는 것입니다.
컴파일러에 알릴 필요가 없습니다. 바이트 변수에는 유효한 값을 할당 할 수 있으며 컴파일러는 바이트에 대한 접미사가 없습니다.
object someValue = (byte) 123;
저는 답변을 좋아하지만 숫자를 바이트로 선언하는 것과 같은 바이트로 변환하고 있습니까? – Robert