int myvar=100;
main()
{
pid_t (*f) (void);
int *ip;
int myvar=10;
f = (pid_t(*) (void)) dlsym(RTLD_NEXT, "getpid");
ip = (int *) dlsym(RTLD_NEXT, "errno");
if (ip)
printf("%d \r\n", *ip);
ip = (int *) dlsym(RTLD_NEXT, "myvar");
if (ip)
printf("%d \r\n", *ip); //not work where is i am wrong
}
1
A
答えて
1
myvar
は、一般的に、ダイナミックシンボルテーブルにエクスポートされません。
::myvar = myvar + 1;
、その後、名前空間:
+0
RTLD_NEXTを使うmemeryの場所を取得しませんが、RTLD_DEFAULTのときに私はそれを理解できません – nitinrakh
2
getpid
およびerrno
シンボルは、libcによってエクスポートされます。 myvvar
シンボルは実行可能ファイルにあり、おそらくエクスポートされません。
Objdump -Tは、シンボルがエクスポートされているかどうかを確認するのに役立ちます。それをリンクするときに-rdynamic
ようにリンカフラグを使用しない限り
$ objdump -T /lib/libc.so.6 | grep -w getpid
00c9c570 g DF .text 00000036 GLIBC_2.0 getpid
0
は、なぜあなたはC++のスコープ演算子を使用しないでください。
関連する問題
- 1. は、usort関数内のグローバル変数にアクセスできません。
- 2. Chromeバージョン55のchrome.tabs.executescriptのグローバル変数にアクセスできません
- 3. jQueryのグローバル変数にアクセスできません。$ .get内の関数
- 4. C - ユーザー関数内のグローバル変数にアクセスできない
- 5. フォーム型のクエリビルダー関数からグローバル変数にアクセスできません
- 6. objective-C NSThreadはグローバル変数にアクセスできますか?
- 7. グローバル変数のデータはJavaScriptの他のページではアクセスできません
- 8. インスタンス変数にアクセスできません
- 9. Javascript:変数にアクセスできません
- 10. app.set変数にアクセスできません。
- 11. グローバル変数にアクセスできない
- 12. 関数内からグローバル変数を変更できません
- 13. Androidスタジオでグローバル変数を変更できません
- 14. コンストラクタ内ではC++変数にアクセスできますが、関数内ではアクセスできません
- 15. は関数内のグローバル変数を参照できません
- 16. グローバル変数内に値を格納できません
- 17. typescriptからグローバル変数に到達できませんか?
- 18. 関数がグローバル変数を認識できません
- 19. 再帰的なjavascript/ajax関数:関数内でグローバル変数にアクセスすることができません
- 20. Javascriptでグローバル変数を更新できません
- 21. Rでグローバル変数を使用できませんか?
- 22. PHPでグローバル変数を使用できません
- 23. TypeScriptでグローバル変数を宣言できません
- 24. Object.create()関数内で変数にアクセスできません
- 25. 関数内でグローバル変数にアクセスできない - jQuery/ajax
- 26. 春の別のメソッドでインスタンス変数にアクセスできません。
- 27. 関数の外部変数にアクセスできません
- 28. 外部関数の変数にアクセスできません
- 29. DLLの外部クラスにアクセスできません。一部のパブリック変数にはアクセスできません。
- 30. C++のさまざまなクラスでグローバル変数にアクセスして変更することができます
この質問に詳しい説明を追加できますか?あなたはどんな問題を抱えていますか?何を試しましたか?あなたは何をしようとしているのですか?コンテキストによって、質問に簡単に答えることができます。 – templatetypedef
'dlsym'をキャストするのは無意味です。 – user562374