bit-fields

    6

    2답변

    나는 비트 필드가 아닌 휴대용 것을 주장 비트 필드에 관한 다양한 질문에 많은 코멘트를 건너했지만, 나는 이유를 자세히 설명하는 소스를 찾을 수 없었습니다. 액면 가격으로, 나는 모든 bitfields가 단지 동일한 bitshifting 코드의 변형으로 컴파일했을 것이라고 추측했지만, 분명히 거기보다 더 많이 있어야하거나 그러한 격렬한 싫어함이 없을 것입니

    1

    2답변

    비트 인덱스 배열을 OptionSet에 부합하는 클래스로 변환하는 도우미 함수를 작성하려고합니다. func getOptionSet<T: OptionSet>(bitIndexes: [T.RawValue]) { var result = T.RawValue() // error 이 잘 작동하지 않습니다 : Cannot invoke value of type

    2

    2답변

    offsetof 매크로 및 구조체 및 클래스에 대한 sizeof 연산자가 있습니다. 조회 할 수있는 비트 비트 필드 멤버의 및 비트 크기을 상쇄하도록 비트 필드 비슷한 기능을 얻을 수있는 방법이 있습니까? sizeof는 #define field_name_size n을 사용하여 에뮬레이션,하지만 하나는 비트 필드의 모든 이전의 회원을 고려하여 몇 가지 복잡한

    5

    1답변

    는 다음을 정의한다 : struct ptw32_thread_t_ { .... int implicit:1; ...... }; 나는 그것이 컴파일이 오류를 제공 오버플로 오류 플래그를 활성화 할당 모든 값으로 가치를 제공하는 방법 만 1 비트를 차지 이해 : ptw32_thread_t *sp; sp = (ptw32_th

    3

    2답변

    나는 다음과 같이 비트 필드 멤버의 구조를 만드는 오전에 bitfileds을 표현하는 방법 : struct Param { char move1: 1; char move2: 1; char move3: 1; char move4: 1; }; 누구 UML 다이어그램으로 그들을 표현하는 방법을 도와 드릴까요 귀하의 질문은 불

    0

    2답변

    일부 프레임 구조에서 작업하면서 이상한 행동을 보았습니다. 나는 빨리 다음과 같이 독립적 인 샘플 코드에서 테스트 : struct non_alligned_struct { uint8_t flag; // start of uint32 bit fields uint32_t a:2; uint32_t b:2; uint32

    0

    1답변

    이것은 C 언어입니다. 다음 프로그램을 실행할 때 아무리 작은 값을 지정해도 런타임 세그먼트 오류 오류가 발생합니다. 그 원인을 찾도록 도와주세요. 당신이 당신의 물건을 스캔 scanf()을하려는 경우 #include <stdio.h> #include <stdlib.h> struct date { unsigned day: 5; unsigne

    1

    1답변

    32 비트 조각 (u32 = unsigned int) 주위를 감싸고 해당 메모리 내의 개별 비트 또는 범위에 대한 액세스를 제공하는 비트 필드 추상 클래스를 작성 중입니다. 이를 구현하기 위해, 나는 고유 키가 니모닉을 나타내는 C-문자 배열에 포인터 (표준 없습니다 : : 문자열) 인 표준 : :지도를 사용하고, 값이 포함 된 구조체이다 비트 필드 속성

    -1

    1답변

    #include <stdio.h> #include <stdint.h> struct __attribute__((__packed__)) sf_header { uint64_t lower: 32; uint64_t higher: 32; }; int main() { struct sf_header h; // part 1

    2

    2답변

    아래와 같은 구조체에 비트 필드로 정의 된 일부 관련없는 플래그 (sta_scan, search)가 있습니다. 해당 플래그가 선언 된 위치가 메모리 저장 측면에서 중요합니까? struct sta_all { char name[16]; unsigned int sta_scan:1; ... int interval; un