strncpy函数只负责复制一定数量的char过来,它后面不自动补\0的那么如果你运气好,数组里本来后面就都是0,就能正常输出如果你运气不好,数组里本来有随机数,肯定乱码这跟你后面的循环没有什么关系,你删掉之后重新编译它会换一块内存而已