[问题] 内存管理

楼主: lianhua (墨心镜情)   2014-09-21 22:03:39
各位版友大家好,
我是个学习C的新手,是统计背景(较理论)出身的。
之前的都是用统计R软件写程式,
但是因为现在老板希望我可以把一些R程式转译成C,
所以还在学习中。
手边买了一本洪维恩的"C语言教学手册"边看边动手写
但是目前卡关了
就是我的程式用Mac的Xcode跑,会出现有关内存出错的讯息。
拿讯息去喂狗后,大该了解好像是说我把一个已经释放过的内存又拿来操作。
后来改用Windows的Dev C++跑却没有错误讯息,但是结果都是错的。
我在想是不是因为内存管理方面有问题?
想请问大家有没有推荐适合新手的,
有关内存方面或资料结构的书可以读?
附上我的程式码:http://ideone.com/B7OiEY
程式写的很粗糙,请见谅。
问题出在第162行有个函数addcol()
在main()里面执行时,当我只呼叫addcol()一次是没问题的
在Xcode里不允许我跑两次以上。
在Dev C++里可以跑两次结果没问题,但是第三次会错,
如果用for循环去跑更是直接全错。
完全不知道该怎么办,只好来恳请各位大大帮忙。
感谢~
作者: fireslayer (fireslayer)   2014-09-21 22:11:00
C#? C?
楼主: lianhua (墨心镜情)   2014-09-21 22:14:00
是 C 我打错了 改一下
作者: xpride (陈ㄚ智)   2014-09-21 23:00:00
我比较怀疑,他的编译的过吗?? 应该不可能吧
作者: rehon   2014-09-22 01:29:00
程式第211行的vec_old应该要改为vec_old[i]所以第210行到212行要用大括号包起来另外程式输出是否为6 12 5 10 9 4 6 7
作者: ironshi (Ironman)   2014-09-26 13:55:00
这本书可以帮助你 http://books.gotop.com.tw/o_A387书不厚,写的也浅显易懂,读懂了C就是你的了。剩下的就是多看其他人写的程式码第197行函式传两个m很怪,所以126的for永不会执行关键在129行,阵列写出界了,所以crash

Links booklink

Contact Us: admin [ a t ] ucptt.com