मैं अपने MSP430 माइक्रोकंट्रोलर की हेडर फ़ाइलों के माध्यम से स्नूपिंग कर रहा था, और मैं इसमें भाग गया <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 */
मैं समझता हूं कि यह एक अनाम संरचना की घोषणा करता है और इसे टाइप करने के लिए टाइप करता है jmp_buf, लेकिन मैं यह पता नहीं लगा सकता कि इसके लिए क्या [1]है। मुझे पता है कि यह jmp_bufएक सदस्य (इस अनाम संरचना के) के साथ एक सरणी होने की घोषणा करता है, लेकिन मैं कल्पना नहीं कर सकता कि इसका क्या उपयोग किया जाता है। कोई विचार?