저는 임베디드 시스템 프로그래밍을 시작한 초보자이며 다른 사람의 코드로 작업하고 있습니다. 그러나 이해하는데 도움이되지 않는 구조체 정의가 있습니다.C struct를 이해하는 데 도움이 필요합니다
struct PACKED {
uint8_t cmd;
uint8_t int_status;
uint8_t v[14];
} rx, tx = { cmd : REG_ADDRES | 0x80, };
cmd : REG_ADDRES | 0x80,
라인을 이해하는 데 도움이 되었으면합니다.
미리 감사드립니다. tx = { cmd : REG_ADDRES | 0x80, };
가 수행되는 라인은 입력 그 제 1 가변 PACKED
의 tx
라는 객체를 초기화하는 것이 무엇
C 방식'선언 struct' 객체와 초기화하는 것입니다. IMHO는 피해야합니다. – 101010
예,하지만 초기화하는 방식을 이해하지 못합니다. – Eneko
C++ (및 C에서도)에서이 구문을 사용하는 것은 컴파일러 * 확장 *입니다. 이는 멤버 별 초기화의 표준 방식이 아닙니다. C++에는 멤버 초기화 (memberwise initialization)조차 없다. 또한'tx' 변수 만 초기화되고'rx' 변수는 초기화되지 않습니다. –