"비트 맵"을 사용하면 64 와이드가됩니다. 바이트 당 8 비트를 의미합니다. 0000 0000
그리고 두 번째 비트 인 0100 0000
을 활성화하려고한다고 가정 해 봅시다.비트 배열 내의 값 변경
나는 memcpy를 사용하여 부호없는 char의 배열을 만들려고 시도했다.
memcpy(bitmap[2], 1, sizeof(1));
심지어 서명되지 않은 char 변수에서 1을 선언하려고했습니다.
unsigned char bit = 1;
memcpy(bitmap[2], bit, sizeof(bit));
나는 strcpy를 늘이 경우 아무것도 해결할 것을 알고 방어 적이기는 하나 분명히, 확실히이 할 수있는 적절한 방법이 해결되지 않습니다. 나는 당신이 볼 수있는 C 전문가가 아니야.
어쩌면 내가 이런 식으로 배열 내부의 값을 변경하려고해서는 안됩니까?
''bitmap '은 64 와이드 - 64 * 비트 * 와이드라고 할 수 있습니까? 그래서 8 바이트? 그것은 하나의 '길다'또는 8 문자의 배열입니까? – Mike
@Mike 예 8 바이트, 지금은 바이트로 사용하지 않을 것입니다. 단지 변경하고자하는 위치를 말할 수 있어야하고 비트 맵을 변경해야합니다. 이 비트 맵은 서명되지 않은 문자의 배열입니다. –