配列のサイズは 3 しかなく、各要素に char を割り当てましたが、NULL ターミネータは引き続き自動的に追加されます。コードに NULL ターミネータが追加される原因は何ですか?
int main(void)
{
char s[3];
s[0] = 'f';
s[1] = 'o';
s[2] = 'o';
int i = 0;
while (s[i] != '\0')
printf("%c", s[i++]);
printf("\n");
if (s[i] == '\0')
printf("Null Terminator Added\n");
}