魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表; I/ R) @: w+ N, \
The problem that no `core' file is created on a segmentation fault; Locate errors in the source with GDB and `core' files—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート: Z6 b! b2 \4 k! m! c
Linux 程序在遇到段错误(常见的是由非法访问内存引起)的时候会产生 core 文件,如果这个程序包含调试信息(编译的时候加 -g 选项),那么使用 gdb 读取这个 core 文件可以快速定位出错的源代码。原来在某软件公司实习的时候(用 RedHat Enterprise Linux)觉得这样非常方便查错,但我自己用的 Debian GNU/Linux 却默认不生成这个文件。bbs.mocwww.com! D B x) I: d/ }$ O b, M
检查以后发现原因是 core 文件最大尺寸(用 ulimit -c 查看)是 0,把它设置成非 0 值就可以了,如:) v3 x8 K G, v% @
ulimit -c 2048(设置 core 文件最大尺寸为 2048 blocks,1block=512bytes,因此这里设置的其实是 1MiB)—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート, f$ l" {& S# J3 G
ulimit -c unlimited(不限 core 文件尺寸)
( Y) `7 {6 D5 D" z U9 @ \魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表附:用 gdb 根据 core dump 文件定位错误的办法。bbs.mocwww.com* Q. `# ^2 i3 ~8 j$ I# {' p
用这个程序作一个测试:
: t- n; q- A3 A—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲートint foo (int *p)bbs.mocwww.com! Q6 \9 R( ~0 }" \
{
6 N/ _- ~7 `2 x# e& X魔力私服,最新魔力宝贝私服技术交流return *p;
( V& p1 ]0 }$ O" o8 n+ m魔力私服,最新魔力宝贝私服技术交流}0 ?& @- k @2 Q+ D
main()
1 W, g5 y7 o5 @% s; u0 B; o魔力私服,最新魔力宝贝私服技术交流{—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート. [. b Q0 ]+ M; C2 E1 {
foo (0);bbs.mocwww.com6 B8 l7 h9 V% d: g9 L
}
8 z2 H3 z4 q& L2 t8 K: ]" `0 O魔力私服,最新魔力宝贝私服技术交流derek@dli: /tmp $ gcc -g a.c
9 q. o8 `) U N+ K1 B# r2 f' x—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲートderek@dli: /tmp $ ./a.out
9 c8 J- _9 V! |; a: {7 E: b& y/ n0 k% w. d妖城在线论坛段错误 (core dumped)bbs.mocwww.com+ p: r3 w3 [* V. V9 B
derek@dli: /tmp $ gdb ./a.out -c core魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表9 L$ `0 U" M+ Y, {3 ]
(这里略去约十行其他信息)2 L6 u, k0 h) J
Core was generated by `./a.out'.妖城在线论坛$ k* I2 f9 z2 @+ N
Program terminated with signal 11, Segmentation fault.
. R' i1 S5 ~' v9 k8 h$ K+ w妖城在线论坛#0 0x0804834a in foo (p=0x0) at a.c:3
: B' v, s2 C: l3 return *p;! _3 N/ E5 Z6 W* l- t: s
如果再输入一条命令 bt,就可以看得清清楚楚错误是在什么时机产生的:
" K- @, [9 ^4 F' ]( t! U! p魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表(gdb) bt# A# G2 J2 a. R2 S I
#0 0x0804834a in foo (p=0x0) at a.c:3魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表& x4 A6 {% `( v1 u% u
#1 0x0804836b in main () at a.c:8
0 W6 q- f& Y0 m5 `6 G/ W—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート不能有比这更清楚的错误信息了!如果是在 Windows 下,就老老实实 Trace and Step 吧。魔力私服,最新魔力宝贝私服技术交流" g' e* f0 E' d! Z! j
魔力私服,最新魔力宝贝私服技术交流1 L) L' G, T/ k3 r/ J
百度知道摘的有关段错误的解释
3 R( T, ^6 @9 f* z2 ]魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表参考一下便于理解
5 k1 ~# {% q) }& P ~, W4 C至于出错的原因 最好贴更多的信息 上面应该还有其他错误提示才对吧
, [ I/ k, o$ t魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表