楼主:
HateAnus (讨厌从后面来)
2018-04-16 23:45:01开发平台(Platform): (Ex: Win10, Linux, ...)
Dev cpp
编译器(Ex: GCC, clang, VC++...)+目标环境(跟开发平台不同的话需列出)
TDM-GCC
额外使用到的函数库(Library Used): (Ex: OpenGL, ...)
问题(Question):
//
作者:
djshen (djshen)
2018-04-16 23:49:0013行确定会跳出?
作者:
crazycy (LCY)
2018-04-16 23:54:00delete?喔 没事 当我没说
作者:
djshen (djshen)
2018-04-16 23:58:00code不详细错误讯息也不详细不如掷筊你可以用debugger
作者:
flyfoxy (飞狐)
2018-04-17 00:00:00sInput[i+1]越界,当下没当,而是当在后面奇怪的地方
与一楼有相同的疑问,觉得13行没跳出造成Str1违规存取
Str100的型别是什么?我猜是char[100],而且Str1没给结束字符,造成strcpy复制过多而出错
全部code传github比较有帮助 这样才知道Str100做什么
这段程式有多处会造成违规存取,没修好死在奇怪的地方都不意外猜测13行的检查在没有空白的时候,会越过结束字符,循环停不下来且造成内存破坏,刚好结束循环后是new,才误以为是new出问题
作者:
joe820730 (Let it go)
2018-04-17 09:22:00这没把完整程式码上传跟掷筊差不多...
作者:
hunandy14 (Charlott.HonG)
2018-04-17 14:36:00实际上被你隐藏起来的地方是有关连的如果真的要隐藏,可以开一个单档最小化重现bug把你觉得重要的地方砍一砍保留会错误的部分砍到最简
作者:
Neisseria (Neisseria)
2018-04-17 16:33:00struct的你有做typedef吗?不知道没做会不会有问题
作者:
djshen (djshen)
2018-04-18 01:08:00strcpy要copy到哪去?我知道你想干嘛 但你知道你要copy去哪?
作者:
djshen (djshen)
2018-04-18 13:38:00你觉得char*会指到哪里
作者:
hunandy14 (Charlott.HonG)
2018-04-18 17:08:0064行补 tk->tokenStr = new char[strlen(temp)];更正 还要+1, 这样应该可以理解了吧QuQ 自己找地方del行数我有砍到 是78
作者:
joe820730 (Let it go)
2018-04-19 21:33:00char array在编译期就配好内存,当然不会出错而char pointer如果你没有new或malloc一个空间给它,你根本不知道它会指到哪,当机也就理所当然了
作者:
dzwei (Cout<< *p << \n ;)
2018-04-21 03:31:00