Результаты поиска по запросу "calling-convention"

1 ответ

как указать VC11 лямбда-соглашение о вызовах

Я хочу передать указатель лямбда-функции, вложенный в класс, в функцию обратного вызова Windows API. Я обнаружил, что мне некуда указывать__stdcall ключевое слово. Некоторые люди сказали мне поддержку только компиляции__cdecl, но после того, как ...

6 ответов

Порядок оценки аргументов при вызове функции?

1 ответ

, правильный способ написать это

бовал это typedef void (* __stdcall MessageHandler)(const Task*);Это компилируется, но дает мне это предупреждение (VS2003): предупреждение C4229: используется анахронизм: модификаторы данных игнорируются Я хочу объявить указатель на функцию с ...

ТОП публикаций

2 ответа

Я не пробовал это на Годболте, но ты мог.

аюIDA Pro Book [https://nostarch.com/idapro2.htm], На странице 86, обсуждая соглашения о вызовах, автор показывает пример соглашения о вызовах cdecl, которое устраняет необходимость для вызывающей стороны очищать аргументы из стека. Я ...

2 ответа

Вызов указателя на функцию, у которой назначенная функция имеет меньше аргументов, чем тип указателя

Рассмотрим следующий код:

1 ответ

Написать программу Fizz в сборке / Использование библиотеки C

Может ли кто-нибудь помочь мне с этой программой сборки: сначала распечатайте числа от 1 до 100. Затем следуйте правилам игры для детей Fizz: если число равн...

2 ответа

Поведение ebp и esp в стеках с использованием функции с параметром

Я хочу узнать больше о стеке. Особенно, что происходит, когда вызывается функция с параметром. Для этого я пишу следующий код: #include <stdio.h> int sum(int d, int e, int f){ int result = d + e + f; return result; } int main(void){ int a = 5; ...

1 ответ

CLR / Fastcall: как типы больших значений внутренне передаются вызываемым функциям?

Просто из любопытства: типы значений обычно копируются, и JIT-компилятор, похоже, использует соглашение вызовов Fastcall от Microsoft при вызове метода. Это помещает первые несколько аргументов в регистры для быстрого доступа. Но как типы больших ...

0 ответов

(сборка Linux x86_64) Почему printf со строкой формата float работает только с rsp% 0x10 = 0

У меня проблема с записью вызова printf на ассемблере Linux x86_64. Если я попробую вывести двойное значение, когдаrsp % 0x10 != 0Распечатайте падение с segfault. Посмотрите на мой код (синтаксис Nasm): [bits 64] global _start extern printf ...

3 ответа

Как передать указатель на функцию-член функции C? [Дубликат]

Возможный дубликат:Использование функции-члена класса C ++ в качестве функции обратного вызова CЯ пишу объектно-ориентированную библиотеку, используя библиот...