TITLE: Initializing character arrays [ This information adapted from the C FAQ from comp.lang.c. ] 5.16: Is char a[3] = "abc"; legal? What does it mean? A: Yes, it is legal; it declares an array of size three, initialized with the three characters 'a', 'b', and 'c', without the usual terminating '\0' character. References: ANSI Sec. 3.5.7 pp. 72-3. [ A preferable form for the above would be as below; it could avoid introducing a bug in dealing with non-null-terminated strings. -adc char a[] = "abc"; ]