我需要知道如何找出共享库中的内存泄漏,这将被加载到发布二进制文件中.我的意思是我使用-g选项构建的共享库,但加载共享库的二进制文件不是使用-g选项构建的.
我得到泄漏报告如下.
==739== at 0x4A05809: malloc (vg_replace_malloc.c:149)
==739== by 0x84781B1: ???
==739== by 0x87507F5: ???
==739== by 0x874CF47: ???
==739== by 0x874E657: ???
==739== by 0x874F7C2: ???
==739== by 0x8779C0C: ???
Run Code Online (Sandbox Code Playgroud)
请告诉我如何从共享库中获取泄漏的堆栈跟踪?
我想RSA_generate_key()在HP-UX 11.11上使用.但是hp-ux 11.11不提供/ dev/random或/ dev/urandom,所以我需要使用openssl prngd.
请告诉我如何在C代码中默认使用它.我安装了openssl,可以使用prngd.
$ ls /opt/openssl/prngd/prngd
/opt/openssl/prngd/prngd
Run Code Online (Sandbox Code Playgroud)
如果您需要更多信息,请与我们联系.
我写了下面的示例代码来找到N的谐波值(1 + 1/2 + 1/3 + ... 1/N).阅读用BOLD编写的代码中的注释,并帮助我找到为什么会发生这种情况.
#include <stdio.h>
float harmonic(float n, float har) {
if(n==0) {
return 0;
}
if(n==1) {
printf("%f\n", har+1.0f);***/* This prints value 1.5000*/***
return har+1.0f;
}else{
harmonic(n-1, (har+(1/n)));
}
}
int main()
{
printf("%f\n", harmonic(2, 0.0f)); **/* But this prints value nan(Not a Number)*/**
return 0;
}
Run Code Online (Sandbox Code Playgroud)
谢谢,娜迦
你能否在C编译器之间给我一些比较,特别是在优化方面?
我面临一个奇怪的问题.我在Windows命令提示符下看到,每个'/'字符都被垃圾字符(日元符号)替换.我选择了两种字体类型"MS Gothic"和"Raster".但同样的问题.如果我使用Raster,则问题是间歇性的.请让我知道如何解决问题.
谢谢,娜迦
c ×3
c++ ×1
class ×1
command-line ×1
cryptography ×1
fonts ×1
gcc ×1
hp-ux ×1
memory-leaks ×1
nan ×1
openssl ×1
raster ×1
rsa ×1
valgrind ×1
windows ×1