为什么我定义了一个占15个字符的字符串,输入字符的空间超过了15也能全部输出

#include<stdio.h>

int main()
{
    char st[15];
    printf("input string:\n");
    gets(st);
    puts(st);
}

1.gets会把输入的内容存储到地址st,C语言不会判断数组是否越界,需要程序员判断。
2.超过15个字节后的数据可能会被其他的数据覆盖

可能是因为你没有分配内存吧