如果数组a不定义一个长度的话,下面的m的值可能是一个不确定的值 例如这样 当然这个程序是错误的因为c语言中数组的长度是不能用变量变量来定义的 所以j是不能赋值给a,做为它的数组空间。 当然定义数组空间需要动态来给数组定义长度需要用到malloc函数 获取数组长度问题 int length = sizeof(c[5]) / sizeof(c[0]); length = 1 原因是因为,c[5]是一个数 而c[0]也是一个数 int 位是4 所以4/4=1