Значение возвращаемого значения dll python неверно

Я создал dll, который содержит код:

#pragma once

extern double __declspec(dllexport) add(double a, double b);
extern double __declspec(dllexport) dif(double a, double b);

#include "testdll.h"

double add(double a, double b)
{
    return a + b;
}

double dif(double a, double b)
{
    return a - b;
} 

Код python, который вызывает функцию add:

    a = ctypes.c_double(1);
    b = ctypes.c_double(2);
    mydll = ctypes.CDLL('testDll.dll');
    mydll.restype = ctypes.c_double;
    ret  = mydll.AddNumbers(a, b);

Проблема в том, что функция add не возвращает a + b, а имеет значение отвинчивания: 2619340

Пожалуйста помоги

python,dll,ctypes,

0