問題タブ [self-modifying]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - C++ 自己消去コード
自己消去コードを作成したい - 他人を消去する機能。私はそれをやろうとしました-しかし、時々(ほとんどの場合)私はそれを実行します-動作するはずなので動作しません。私はこのようなことをしたい:
私はすでにこれを行う関数を作成しましたが、ちょっとバグがあります - ret オペコードが見つかるまですべてを停止します。func の開始アドレスが (DWORD)func であることはわかっていますが、関数の終了アドレスを見つけるにはどうすればよいですか? 次のような例をWebで見ました:
しかし、これは私にとってはうまくいきません - 私はVS 2013を使用しています。これが私のコードです:
dwLen として、begin から次の ret ステートメントまで、他の関数で計算された長さを渡します。削除機能として、NOPまたはジャンクで本体を埋めることを意味します-プログラムの起動時に1回だけ使用される機能を「消去」したいのですが、後で必要ありません。誰かにダンプさせたくないだけです私のアプリとそれを逆にするなど
c - 自己変更コードのセグメント障害
これは、自己変更コードで発生する可能性のある命令キャッシュ同期の問題に関連していますか? 昔、質問したことがあります。受け入れられた解決策で関連する問題が解決されたにもかかわらず、機能がオンに戻った後に CPU がジャンク アドレスにジャンプしようとする新しい断続的な障害モードに遭遇しました。しかし、事後の逆アセンブリ (コア ダンプを使用) では、call 命令の正しいアドレスが示されます。
いくつかの gdb 分析が続きます。
ここで注目すべき興味深い点は、正しいアドレスは 0x4010d0 ですが、失敗した場合のジャンク アドレスは常に0x14010d0であるということです。これは、バックトレースで次の命令を指すように命令ポインターが示されているにもかかわらず、何らかの形で失敗した呼び出し命令だと思います。(それが gdb での適切な動作である可能性があります。よくわかりません)。
その場合、CPU がe8 cf e2 f6 ffではなくe8 cf e2 f6 00を呼び出そうとしたようです。0x0000000000492dfc から始まる呼び出しサイトに最初に存在した 5 バイトのシーケンスは、0x0F1F440000 の 5 バイトの NOP (上部にリンクされた質問で与えられた提案による) です。
ここで何が起こっているのですか?さらにコンテキストが必要な場合はお知らせください。ところで、私は Intel(R) Xeon(R) CPU E5-2670 を使用していますが、動作は私が試した他のいくつかのマシンでも一貫しているようです。
編集:コードは、-O2 最適化レベルで次の追加オプションを使用してコンパイルされています。
-fno-optimize-sibling-calls -finstrument-functions
c++ - STL c++ でベクトル クラスを変更しますが、これは可能ですか?
ベクタークラスのメンバー関数を変更したいと思います。これは可能ですか?たとえば、ベクトルの整数ではなく、値に関して削除できるようにしたいと思います。
c++11 - C++: while ループで関数内の変数値を更新する
私はC++の専門家ではなく、htmlファイルの1行で複数のURLを読み取るプログラムを書いているので、次のコードを書きました:
ここでの私の問題は、見つかった条件で使用するために更新されていないことwhileです。私が見たように、std::string クラスは、別の std::string クラス (文字列の場合、str.erase() がその値を更新しない限り更新されませんが、(str.at() = '') は更新されません) )、ループが始まるたびに「見つかった」を更新したい場合、および条件に対して、ここで何ができますか。
私がやりたいことは次のとおりです。
指定された文字列に一致する式があるかどうかを確認し
urldownます。最初と最後の文字を設定します。
見つかった URL の後のループで「pos」を更新し、次を探します。
私は cplusplus.com と cppreference.com のいたるところを見てきましたが、私に役立つものは見つかりませんでした。
std::list::remove を 0 から 9 までのすべての数値でループしてから、新しい値を与えることを考えましたが、それが最適なオプションかどうかはわかりません。
python - ループ内の for ループの反復リストを変更する
長いリストを繰り返し処理する for ループ。リストを変更する反復を加速しようとしました(成功しませんでした)。コード:
5 行目の目的は、不要な計算を省くことです。
14 ~ 17 行目で変更を加えます(エラトステネスのふるいに従い、素数の倍数の値を False に変更します)。これにより、5 行目の計算が増えることを回避します。
まとめ:
- ループ自体からループ反復リストを変更することは可能ですか?
- 答えが「はい」の場合、なぜ私のコードではうまくいかないのですか?
php - PHPコードでテキストファイルを変更する
JSON ファイルの形式が正しくありません (doc1.json):
そして、私はこれを変更する必要があります:
PHPファイルでこれを行うことはできますか?
php - 助けてください: iframe コンテンツの変更
このソースの iframe を変更したい http://www.mtel.ba/imenik/index.php
リストから選択したデフォルト値を非表示にして選択したい。
ある都市の電話帳を作りたいです。出来ますか?そしてどうやって?私はjqueryとfile get contentsで試してみましたが....ありがとう
operating-system - 内部から変更可能なOS
実行中に内部から変更できる最小限のオープン ソース OS はありますか? 教育目的で。reload modified system moduleボタンと、起動時に以前のフェイルセーフ構成で実行するオプションを備えた組み込みの WYSIWYG エディターのようなものが欲しいです。