Ich habe die Header-Dateien meines MSP430-Mikrocontrollers durchsucht und bin auf Folgendes gestoßen <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 */
Ich verstehe, dass es eine anonyme Struktur deklariert und es typisiert jmp_buf
, aber ich kann nicht herausfinden, wofür das [1]
ist. Ich weiß, dass es jmp_buf
sich um ein Array mit einem Mitglied (dieser anonymen Struktur) handelt, aber ich kann mir nicht vorstellen, wofür es verwendet wird. Irgendwelche Ideen?