Tôi đã dò tìm các tệp tiêu đề của bộ vi điều khiển MSP430 của mình và tôi gặp phải vấn đề này trong <setjmp.h>
:
/* r3 does not have to be saved */
typedef struct
{
uint32_t __j_pc; /* return address */
uint32_t __j_sp; /* r1 stack pointer */
uint32_t __j_sr; /* r2 status register */
uint32_t __j_r4;
uint32_t __j_r5;
uint32_t __j_r6;
uint32_t __j_r7;
uint32_t __j_r8;
uint32_t __j_r9;
uint32_t __j_r10;
uint32_t __j_r11;
} jmp_buf[1]; /* size = 20 bytes */
Tôi hiểu rằng nó khai báo một cấu trúc ẩn danh và typedef là nó jmp_buf
, nhưng tôi không thể tìm ra nó để làm gì [1]
. Tôi biết nó tuyên bố jmp_buf
là một mảng có một thành viên (của cấu trúc ẩn danh này), nhưng tôi không thể tưởng tượng nó được sử dụng để làm gì. Có ý kiến gì không?