今天真是气死我了, 写了一个找不出任何缺陷的程序, 结果运行结果就是错的, 后来找了半天才发现了问题所在 int f[5010]; memset(f, 1, sizeof(f)) 复制代码 这个用法是错的, 真是奇了怪了, 以前我好像一直这样用的呢??? \笑 如果这里改成memset(a,1,5010*sizeof(int))也不可以,因为memset按字节赋值。这样赋值完以后,每个数组元素的值实际上是0x01010101即十进制的16843009。所以用memset对非字符型数组赋初值是不可取的! 多么痛的领悟啊!!!