の読み:Valgrindの無効がどういうわけかValgrindのは、私のプログラムの最初の行でエラーを示しサイズ1(のsscanf)
int main(int argc, char** argv) {
int i, r;
sscanf(argv[1], "%d", &r);
return 0;
}
Valgrindのレポート:
==18674== Invalid read of size 1
==18674== at 0x4ECB1A0: rawmemchr (in /usr/lib64/libc-2.23.so)
==18674== by 0x4EB2F41: _IO_str_init_static_internal (in /usr/lib64/libc-2.23.so)
==18674== by 0x4EA16C6: __isoc99_vsscanf (in /usr/lib64/libc-2.23.so)
==18674== by 0x4EA1666: __isoc99_sscanf (in /usr/lib64/libc-2.23.so)
==18674== by 0x400DE3: main (test_b_arbre.c:18)
==18674== Address 0x0 is not stack'd, malloc'd or (recently) free'd
==18674==
==18674==
==18674== Process terminating with default action of signal 11 (SIGSEGV)
==18674== Access not within mapped region at address 0x0
==18674== at 0x4ECB1A0: rawmemchr (in /usr/lib64/libc-2.23.so)
==18674== by 0x4EB2F41: _IO_str_init_static_internal (in /usr/lib64/libc-2.23.so)
==18674== by 0x4EA16C6: __isoc99_vsscanf (in /usr/lib64/libc-2.23.so)
==18674== by 0x4EA1666: __isoc99_sscanf (in /usr/lib64/libc-2.23.so)
==18674== by 0x400DE3: main (test_b_arbre.c:18)
を私はいくつかの同様の質問を経て、しかし、私は、プログラムを実行する方法...それを修正する方法を を見つけられませんでした:
valgrind --leak-check=yes --track-origins=yes ./b_arbre 1 2 3 4 5 6
プログラムに '#include'がありますか? –
Barmar
@Barmarこれは必須ですが、この問題の赤ちゃんです。 – Kaz
Valgrindは 'test_b_arbre.c'にエラーを表示します。おそらく、あなたは、そのファイルのコードの中に基になる回答があったときに、この記事であまりに単純化したコードを投稿したでしょうか? –