cdecl

    0

    1答えて

    私はいくつかのセンサーがあるプロジェクトで作業しており、USB経由でPCに接続したいと思っています。今では、c言語で書かれたWindowsのlibがあり、すべての関数がcのcdecl呼び出し規約を使用していて、他の言語(java!)のプログラムで呼び出し規約が与えられているかどうかを確認する必要があります。 私はちょっと調べて、javaのDLLをバインドしたり、JNAを使用するチュートリアルをいく

    0

    1答えて

    デバッガ用のスタックウォーカーを実装しているときに、関数呼び出しの引数を抽出して表示するようになっています。シンプルにするために、純粋な32ビット(デバッガとデバッグの両方)のcdecl規則と3つのパラメータを取る関数から始めました。しかし、スタックトレースの引数が何回かcdeclで定義されているもの(右から左、何もレジスタにはない)と比較して、なぜ乱数であるのか理解できません。ここで は私がスタ

    4

    1答えて

    GCC cdecl呼び出し規約では、呼び出しが返された後に同じスタックにプッシュされた引数に依存できますか? ASMとCを混在させ、最適化(-O2)を有効にしても?ワードで

    4

    3答えて

    私は、C関数から呼び出され、引数をとるアセンブリルーチンをいくつか持っています。今、私はそれらの引数がcdeclの順番でスタックに渡されると仮定しています。それは正当な前提ですか? コンパイラ(GCC)がこれを検出し、引数が正しく渡されていることを確認しますか、手動で移動してcdeclを宣言する必要がありますか?その場合、より高い最適化レベルを指定すると、その属性は保持されますか?

    2

    1答えて

    OpenCVライブラリ、Boostライブラリ、およびこのLINKからダウンロードしたコードのコードを使用してアプリケーションを作成しています。私はThunk32と同じソリューションの下にプロジェクトを作成していると私は、次のファイルがあります。 MainProject.cpp #include "stdafx.h" int main(int argc, char** argv) {

    2

    1答えて

    C main関数からアセンブリ関数に引数を渡すにはどうすればよいですか?今、私は、アセンブリファイルにsomedataを使用する方法 void function(char *somedata) __attribute__((cdecl)); :私は私のカスタム関数のようなものを見て持っていることを知っています。私の操作システムはLinux Ubuntuで、私のプロセッサはx86です。

    3

    2答えて

    前に期待される初期化子は私がcdecl呼び出し規約に問題がある: void Test1(char* str, ...) // ok {} void cdecl Test2(char* str, ...) // error: expected initializer before 'Test2' {} int main() {} は、私は、コンパイラがcdecl呼び出し規約を

    0

    1答えて

    ゴー:http://cdecl.org/ 入力: char (*arr)[5] 出力: 宣言ARR "アレイ5" で何文字 のアレイ5へのポインタとして?これは単に要素が5つの配列を意味しますか?

    2

    2答えて

    私は最後の計算まで機能する階乗計算プログラムを作成しました。階乗値を_multiply_factで計算すると、ベースポインターはランダムな値を指すようになります。私は間違って何をしていますか? よし手順 _factorial: push ebp ;save base pointer mov ebp, esp ;set up new base pointer mo