自己写的一个打字游戏,但出现了字符串数组改变的问题,求助大佬
c语言吧
全部回复
仅看楼主
level 3
2019年03月01日 12点03分 1
level 3
主要问题在gets()函数
2019年03月01日 12点03分 2
level 3
在用gets()函数读取字符串给T时,K字符串数组的长度发生了改变,如第三张图第7行,K的长度是13,使用gets(T)后,K的长度怎么就变成了1 ???
2019年03月01日 12点03分 3
level 3
而且在一开始设定给K的大小为K[4],长度一开始也应该是5,怎么会是13 ???
13就算了,后来居然又变成了1,实在弄不明白
2019年03月01日 12点03分 5
level 3
求助啊
2019年03月01日 12点03分 7
level 6
k长度13是因为你字符输入超了,只有4的空间,你输入5个,13是随机的没有意义的,你换个电脑试试就不一样了…1是因为你前面用gsts给t输入字符串的时候超过个t的空间(t就4个字节的空间,你输入6个字节),超出的部分占到了k的空间,直接覆盖,k的地址上的数据现在是o\0xxxx,\0后面的电脑直接不读取,当做句子的结束,所以是1…想睡觉…说的好乱…[汗]
2019年03月01日 16点03分 8
真的是这个问题,这就是大佬吗
2019年03月01日 16点03分
level 3
为什么有两个main,还能运行
2019年03月02日 11点03分 10
1