while(set->next())
{
dstr = set->getString(1);
printf("dstr = %s\n",dstr.c_str());
}
第一次循环能从数据库中得到数据,并打印出来,程序也正常运行,第二次进入循环执行到getString程序就自动关闭
getString 到底该怎么处理调试错误如下:
*** glibc detected *** /Server/ParaServer/Debug/ParaServer: free(): invalid pointer: 0x0a068850 ***
======= Backtrace: =========
/lib/libc.so.6[0x2ac595]
/lib/libc.so.6(cfree+0x59)[0x2ac9d9]
/usr/lib/libstdc++.so.6(_ZdlPv+0x21)[0x7769581]
/usr/lib/libstdc++.so.6(_ZNSs4_Rep10_M_destroyERKSaIcE+0x1d)[0x774614d]
/usr/lib/libstdc++.so.6(_ZNSs6assignERKSs+0xa6)[0x7747796]
/usr/lib/libstdc++.so.6(_ZNSsaSERKSs+0x24)[0x77477f4]
/Server/ParaServer/Debug/ParaServer[0x804a484]
/lib/libc.so.6(__libc_start_main+0xdc)[0x258e9c]
/Server/ParaServer/Debug/ParaServer(__gxx_personality_v0+0x179)[0x8049671]
======= Memory map: ========
00110000-00119000 r-xp 00000000 03:01 15320488 /lib/libnss_files-2.5.so
00119000-0011a000 r-xp 00008000 03:01 15320488 /lib/libnss_files-2.5.so
0011a000-0011b000 rwxp 00009000 03:01 15320488 /lib/libnss_files-2.5.so
00225000-0023f000 r-xp 00000000 03:01 15320487 /lib/ld-2.5.so
0023f000-00240000 r-xp 00019000 03:01 15320487 /lib/ld-2.5.so
00240000-00241000 rwxp 0001a000 03:01 15320487 /lib/ld-2.5.so
00243000-00382000 r-xp 00000000 03:01 15320523 /lib/libc-2.5.so
00382000-00384000 r-xp 0013f000 03:01 15320523 /lib/libc-2.5.so
00384000-00385000 rwxp 00141000 03:01 15320523 /lib/libc-2.5.so
00385000-00388000 rwxp 00385000 00:00 0
0038a000-0038c000 r-xp 00000000 03:01 15320543 /lib/libdl-2.5.so
0038c000-0038d000 r-xp 00001000 03:01 15320543 /lib/libdl-2.5.so
0038d000-0038e000 rwxp 00002000 03:01 15320543 /lib/libdl-2.5.so
003fd000-00410000 r-xp 00000000 03:01 15320535 /lib/libnsl-2.5.so
00410000-00411000 r-xp 00012000 03:01 15320535 /lib/libnsl-2.5.so
00411000-00412000 rwxp 00013000 03:01 15320535 /lib/libnsl-2.5.so
00412000-00414000 rwxp 00412000 00:00 0
004ab000-00552000 r-xp 00000000 03:01 691997 /home/oracle/oracle/product/10.2.0/client_1/lib/libocci.so.10.1
00552000-005a2000 rwxp 000a6000 03:01 691997 /home/oracle/oracle/product/10.2.0/client_1/lib/libocci.so.10.1
005a2000-0077e000 r-xp 00000000 03:01 689661 /home/oracle/oracle/product/10.2.0/client_1/lib/libnnz10.so
0077e000-007a4000 rwxp 001dc000 03:01 689661 /home/oracle/oracle/product/10.2.0/client_1/lib/libnnz10.so
007a4000-007a6000 rwxp 007a4000 00:00 0
007ed000-0089c000 r-xp 00000000 03:01 1660032 /usr/lib/libstdc++.so.5.0.7
0089c000-008a1000 rwxp 000ae000 03:01 1660032 /usr/lib/libstdc++.so.5.0.7
008a1000-008a6000 rwxp 008a1000 00:00 0
00d4d000-00d72000 r-xp 00000000 03:01 15320544 /lib/libm-2.5.so
00d72000-00d73000 r-xp 00024000 03:01 15320544 /lib/libm-2.5.so
00d73000-00d74000 rwxp 00025000 03:01 15320544 /lib/libm-2.5.so
00d76000-00d89000 r-xp 00000000 03:01 15320528 /lib/libpthread-2.5.so
00d89000-00d8a000 r-xp 00013000 03:01 15320528 /lib/libpthread-2.5.so
00d8a000-00d8b000 rwxp 00014000 03:01 15320528 /lib/libpthread-2.5.so
00d8b000-00d8d000 rwxp 00d8b000 00:00 0
00fea000-00feb000 r-xp 00fea000 00:00 0 [vdso]
00feb000-01d1c000 r-xp 00000000 03:01 689611 /home/oracle/oracle/product/10.2.0/client_1/lib/libclntsh.so.10.1
01d1c000-01d7d000 rwxp 00d31000 03:01 689611 /home/oracle/oracle/product/10.2.0/client_1/lib/libclntsh.so.10.1
01d7d000-01d91000 rwxp 01d7d000 00:00 0
076a8000-076b3000 r-xp 00000000 03:01 15320545 /lib/libgcc_s-4.1.2-20080825.so.1
076b3000-076b4000 rwxp 0000a000 03:01 15320545 /lib/libgcc_s-4.1.2-20080825.so.1
076b6000-07796000 r-xp 00000000 03:01 1645544 /usr/lib/libstdc++.so.6.0.8
07796000-0779a000 r-xp 000df000 03:01 1645544 /usr/lib/libstdc++.so.6.0.8
0779a000-0779b000 rwxp 000e3000 03:01 1645544 /usr/lib/libstdc++.so.6.0.8
0779b000-077a1000 rwxp 0779b000 00:00 0
08048000-08058000 r-xp 00000000 03:01 15619059 /Server/ParaServer/Debug/ParaServer
08058000-08059000 rw-p 0000f000 03:01 15619059 /Server/ParaServer/Debug/ParaServer
0a054000-0a0b0000 rw-p 0a054000 00:00 0
b7da4000-b7e75000 rw-p b7da4000 00:00 0
b7e75000-b7ed3000 r--p 00000000 03:01 691849 /home/oracle/oracle/product/10.2.0/client_1/oracore/zoneinfo/timezlrg.dat
b7ed3000-b7ef9000 rw-p b7ed3000 00:00 0
b7f05000-b7f06000 rw-p b7f05000 00:00 0
bfa4e000-bfa63000 rwxp bfa4e000 00:00 0 [stack]
{
dstr = set->getString(1);
printf("dstr = %s\n",dstr.c_str());
}
第一次循环能从数据库中得到数据,并打印出来,程序也正常运行,第二次进入循环执行到getString程序就自动关闭
getString 到底该怎么处理调试错误如下:
*** glibc detected *** /Server/ParaServer/Debug/ParaServer: free(): invalid pointer: 0x0a068850 ***
======= Backtrace: =========
/lib/libc.so.6[0x2ac595]
/lib/libc.so.6(cfree+0x59)[0x2ac9d9]
/usr/lib/libstdc++.so.6(_ZdlPv+0x21)[0x7769581]
/usr/lib/libstdc++.so.6(_ZNSs4_Rep10_M_destroyERKSaIcE+0x1d)[0x774614d]
/usr/lib/libstdc++.so.6(_ZNSs6assignERKSs+0xa6)[0x7747796]
/usr/lib/libstdc++.so.6(_ZNSsaSERKSs+0x24)[0x77477f4]
/Server/ParaServer/Debug/ParaServer[0x804a484]
/lib/libc.so.6(__libc_start_main+0xdc)[0x258e9c]
/Server/ParaServer/Debug/ParaServer(__gxx_personality_v0+0x179)[0x8049671]
======= Memory map: ========
00110000-00119000 r-xp 00000000 03:01 15320488 /lib/libnss_files-2.5.so
00119000-0011a000 r-xp 00008000 03:01 15320488 /lib/libnss_files-2.5.so
0011a000-0011b000 rwxp 00009000 03:01 15320488 /lib/libnss_files-2.5.so
00225000-0023f000 r-xp 00000000 03:01 15320487 /lib/ld-2.5.so
0023f000-00240000 r-xp 00019000 03:01 15320487 /lib/ld-2.5.so
00240000-00241000 rwxp 0001a000 03:01 15320487 /lib/ld-2.5.so
00243000-00382000 r-xp 00000000 03:01 15320523 /lib/libc-2.5.so
00382000-00384000 r-xp 0013f000 03:01 15320523 /lib/libc-2.5.so
00384000-00385000 rwxp 00141000 03:01 15320523 /lib/libc-2.5.so
00385000-00388000 rwxp 00385000 00:00 0
0038a000-0038c000 r-xp 00000000 03:01 15320543 /lib/libdl-2.5.so
0038c000-0038d000 r-xp 00001000 03:01 15320543 /lib/libdl-2.5.so
0038d000-0038e000 rwxp 00002000 03:01 15320543 /lib/libdl-2.5.so
003fd000-00410000 r-xp 00000000 03:01 15320535 /lib/libnsl-2.5.so
00410000-00411000 r-xp 00012000 03:01 15320535 /lib/libnsl-2.5.so
00411000-00412000 rwxp 00013000 03:01 15320535 /lib/libnsl-2.5.so
00412000-00414000 rwxp 00412000 00:00 0
004ab000-00552000 r-xp 00000000 03:01 691997 /home/oracle/oracle/product/10.2.0/client_1/lib/libocci.so.10.1
00552000-005a2000 rwxp 000a6000 03:01 691997 /home/oracle/oracle/product/10.2.0/client_1/lib/libocci.so.10.1
005a2000-0077e000 r-xp 00000000 03:01 689661 /home/oracle/oracle/product/10.2.0/client_1/lib/libnnz10.so
0077e000-007a4000 rwxp 001dc000 03:01 689661 /home/oracle/oracle/product/10.2.0/client_1/lib/libnnz10.so
007a4000-007a6000 rwxp 007a4000 00:00 0
007ed000-0089c000 r-xp 00000000 03:01 1660032 /usr/lib/libstdc++.so.5.0.7
0089c000-008a1000 rwxp 000ae000 03:01 1660032 /usr/lib/libstdc++.so.5.0.7
008a1000-008a6000 rwxp 008a1000 00:00 0
00d4d000-00d72000 r-xp 00000000 03:01 15320544 /lib/libm-2.5.so
00d72000-00d73000 r-xp 00024000 03:01 15320544 /lib/libm-2.5.so
00d73000-00d74000 rwxp 00025000 03:01 15320544 /lib/libm-2.5.so
00d76000-00d89000 r-xp 00000000 03:01 15320528 /lib/libpthread-2.5.so
00d89000-00d8a000 r-xp 00013000 03:01 15320528 /lib/libpthread-2.5.so
00d8a000-00d8b000 rwxp 00014000 03:01 15320528 /lib/libpthread-2.5.so
00d8b000-00d8d000 rwxp 00d8b000 00:00 0
00fea000-00feb000 r-xp 00fea000 00:00 0 [vdso]
00feb000-01d1c000 r-xp 00000000 03:01 689611 /home/oracle/oracle/product/10.2.0/client_1/lib/libclntsh.so.10.1
01d1c000-01d7d000 rwxp 00d31000 03:01 689611 /home/oracle/oracle/product/10.2.0/client_1/lib/libclntsh.so.10.1
01d7d000-01d91000 rwxp 01d7d000 00:00 0
076a8000-076b3000 r-xp 00000000 03:01 15320545 /lib/libgcc_s-4.1.2-20080825.so.1
076b3000-076b4000 rwxp 0000a000 03:01 15320545 /lib/libgcc_s-4.1.2-20080825.so.1
076b6000-07796000 r-xp 00000000 03:01 1645544 /usr/lib/libstdc++.so.6.0.8
07796000-0779a000 r-xp 000df000 03:01 1645544 /usr/lib/libstdc++.so.6.0.8
0779a000-0779b000 rwxp 000e3000 03:01 1645544 /usr/lib/libstdc++.so.6.0.8
0779b000-077a1000 rwxp 0779b000 00:00 0
08048000-08058000 r-xp 00000000 03:01 15619059 /Server/ParaServer/Debug/ParaServer
08058000-08059000 rw-p 0000f000 03:01 15619059 /Server/ParaServer/Debug/ParaServer
0a054000-0a0b0000 rw-p 0a054000 00:00 0
b7da4000-b7e75000 rw-p b7da4000 00:00 0
b7e75000-b7ed3000 r--p 00000000 03:01 691849 /home/oracle/oracle/product/10.2.0/client_1/oracore/zoneinfo/timezlrg.dat
b7ed3000-b7ef9000 rw-p b7ed3000 00:00 0
b7f05000-b7f06000 rw-p b7f05000 00:00 0
bfa4e000-bfa63000 rwxp bfa4e000 00:00 0 [stack]
解决方案 »
- 游标的声明和定义能够分开吗?新鸟求教
- 群集环境下dbca无法启动Cluster安装模式
- IMP导入报错
- 救命啊
- 在Win2000下Oracle9i客户端无法连接Linux上的oracle manager server
- oracle开发编码问题!
- length与lengthb有什么区别
- 有人给解释一下data block , extent 和 segment的区别吗?
- win98+win2k双系统,如何在w2kserver上安装oracle8.1.7
- 在oracle中怎么设置复合主键?????在线等
- 编译存储过程出现 ora-031113
- 如何写sql脚本,导入excel表格的数据,excel表格里面一列内容超过4000字符。
{
printf(“ok\n");
}
这样我能打印2条OK,因为数据库有2行数据
可循环里放getstring,数据库第一行读 没问题,next到第二行getstring就出问题了