Как получить аргумент из Python в C++?
Мне нужно передать строку из Python в функцию C++. Есть простой код на python с передачей в функцию с++ строки.
Код на python
import ctypes
lib = ctypes.CDLL('D:/FOOc++/FOOc++/libfoo.so')
lib.String_One.restype = ctypes.c_char_p
print(lib.String_One("hello minsk"))
Код на с++
\\header.h
#ifndef HEADER_H
#define HEADER_H
#if defined(MYLIBRARY)
#define LIBRARY_EXPORT __declspec(dllexport)
#else
#define LIBRARY_EXPORT
#endif
extern "C" LIBRARY_EXPORT const char* String_One(char* msg);
extern LIBRARY_EXPORT const char* Getter(char* msg){
return msg;
}
#endif // HEADER_H
\\functionfoo.cpp
#include "Header.h"
#include <stdio.h>
#include <string>
#include <string.h>
using namespace std;
const char* sql = "";
void String_One(const char* msg)
{
string s(msg);
sql = msg;
}
int main(){
cout<<sql<<endl;
}