看板FreeBSD
标 题[问题]请问在FreeBSD底下设计程式
发信站师大附中 BBS 站 (Mon Mar 7 20:51:22 2005)
转信站ptt!ctu-reader!ctu-peer!news.nctu!nctumenews!news.ind.ntou!news.ntu!ma
请问如果在FreeBSD底下设计程式,
执行结果很诡异,但程式码确定是正确的时候可能是哪些原因?
我目前有一个函式会返回unsigned char *型态的指标(他是个字串)
假设将那个函式的返回值存在res
而我用printf("%s", res);
执行结果是(null)
用printf("(%d) %s", res, res);
变成(0) 正确结果
printf("(%d)(%d) %s", res, res, res);
变成(0)(一个正整数) 正确结果
似乎return之後的第一个动作会出错
接下来又正常了
为什麽会这样?
=============================================
另外还有情况是
呼叫某自订函式的时候会发生segment fault (core dump)
找了很久都没找到错误
後来把呼叫函式的那行重写就又正常了
但再比对之前的并没有什麽不同!?
有人遇过类似情况吗?
--
★ <师大附中 BBS 站> bbs.hs.ntnu.edu.tw ★ From: sw169-71-109.adsl.seed.net.tw