¹ØÓÚpython µ÷ÓÃc++ ³öÏÖ´íÎóµÄÎÊÌâ
ÎÒÓÐÈý¸öCPPÎļþ
wrap.cpp
C/C++ code:
#include <Python.h>
#include "bridge.h"
extern "C"
{
PyObject* bridge(PyObject* self, PyObject* args)
{
int n = 0;
int result = 0;
if (! PyArg_ParseTuple(args, "answer", &n))
return NULL;
result = transport(4);
return Py_BuildValue("answer", result);
}
static PyMethodDef bridgeMethods[] =
{
{"transport", bridge, METH_VARARGS, "transport data"},
{NULL, NULL}
};
void initbridge()
{
PyObject* m;
m = Py_InitModule("bridge", bridgeMethods);
}
}
bridge.cpp
C/C++ code:
#include "bridge.h"
#include "faq.h"
extern "C"
{
int transport(int n)
{
FAQ *myFaq = new FAQ();
int c = myFaq->getBetterAnswer();
delete myFaq;
return c;
}
}
faq.cpp
C/C++ code:
#include "faq.h"
int FAQ::getBetterAnswer(void)
{
return 3;
}
void FAQ::printAnswer()
{
}
FAQ::FAQ()
{
}
FAQ::~FAQ()
{
}
ʹÓà g
Ïà¹ØÎÊ´ð£º
ÒÑÖªPython ÖУº
s = unicode("²âÊÔ", "gb2312")
s = u'\u6d4b\u8bd5'
print s
²âÊÔ
ÔÚDelphiÀïÃæÈçºÎ½«\u6d4b\u8bd5ÕâÑùµÄ»¹Ô³ÉGb2312µÄºº×ÖÄØ£¿
ÕÒµ½¸ö·½·¨
......
#include"stdio.h"
#include"stdlib.h"
void ContrTwo(char i)
{
char str1[8];
itoa(i,str1,2);
printf("%s",str1);
}
unsigned char leftRot(char str,int i);
unsign ......
ÎÒÊÇÐÂÊÖ£¬³õѧMYSQL£¬Óкܶ಻¶®£¬Íû´Í½Ì£¡£¡
±ÈÈç˵ÎÒн¨Ò»¸öMYSQLÊý¾Ý¿âUSER Êý¾Ý¿âÖÐÓбíLIST
È»ºóÎÒÔÚVCÖÐн¨Ò»¸öMFC¶Ô»°¿ò¹¤³Ì£¬È»ºóÎÒÔõôÑù²ÅÄÜÓÃVC»ñµÃÊý¾Ý¿âÖбíµÄÊý¾Ý£¿
Ï£Íû¸ø³ö¾ßÌåµÄ²Ù×÷² ......
ÈçÌ⣬C/C++ÖеÄexeclÔõôµ÷ÓÃдºÃµÄjava³ÌÐò£¬
execl("/opt/java1.5/bin/java","MyClass",NULL);
ÕâÑùµÄ²»ÐÐŶ¡£
²»»á.
ÔËÐÐjava³ÌÐò
ÕÒ¹¤¾ß²é¿´Ò»ÏÂÄǸö³ÌÐòµÄÃüÁîÐÐ
ËÑË÷Ï£ºjni ......