str是固定大小的,你这里初始化大小为1了。无法装下gets()把char str[] = {0};改为char str[1000];就行了
帅哥,代码格式不错,你应该是从其他语言转到c的吧:)
问题出在gets,gets从标准输入设备读字符串函数。可以无限读取,不会判断上限,以回车结束读取,所以程序员应该确保buffer的空间足够大,以便在执行读操作时不发生溢出。加断点调试下,看看str在for循环之前的值