가능한 중복 :
convert big endian to little endian in C [without using provided func]부호없는 정수
나는이 한 부분에 문제가있어 : 나는 32 비트 수를 가져 가고 싶어하면, 내가 원하는 빅 엔디안에서 리틀 엔디안 형식으로 바이트 (1 바이트 = 8 비트)를 이동합니다. 예를 들어 :
:이처럼 보이도록 내가 원하는1st byte 2nd byte 3rd byte 4th byte
00000000 00000000 00000000 00000001
:
이는 것처럼 보일 것이다 것입니다 내가 32 비트에서 숫자 1
가 있다고 가정하자
4th byte 3rd byte 2nd byte 1st byte
00000001 00000000 00000000 00000000
최소 유효 값을 가진 바이트가 먼저 나옵니다. for 루프를 사용할 수 있다고 생각했지만 C++에서 비트/바이트를 이동하는 방법에 대해서는 확실하지 않습니다. 예를 들어 사용자가 1로 입력하고 위의 예와 같이 비트를 이동해야한다면 1을 비트로 변환 한 다음 전환하는 방법을 모르겠습니다. 누구든지 올바른 방향으로 나를 가리킬 수 있습니까? 감사!
@NPE 어떻게 중복 될 수 있습니다 심지어 같은 언어 아니라면? –
숫자와 연산에 관한 대부분의 규칙이 C에서 C++로 이월되기 때문에? – cHao
@LuchianGrigore : 물론, 제 견해로는 여전히 "변하는 비트와 바이트"에 관한 것이지, "멋진 C++ 스타일에서 이것을 어떻게 할 것인가"에 관한 것이 아니기 때문에 여전히 복제되어 있습니다. 물론 커뮤니티는 다르게 결정할 수 있습니다. – NPE