欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

c調(diào)用python的方法

這篇文章主要介紹c調(diào)用python的方法,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

平魯網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián),平魯網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為平魯數(shù)千家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站制作要多少錢,請(qǐng)找那個(gè)售后服務(wù)好的平魯做網(wǎng)站的公司定做!

c調(diào)用Python的步驟:

1、設(shè)置編譯環(huán)境,其實(shí)就是設(shè)置Python的頭文件和庫(kù)文件目錄

2、初始化Python解釋器:

 Py_Initialize();

3、調(diào)用Python

4、釋放資源

Py_Finalize();

實(shí)例:

/*
module:    Python腳步的模塊名
function:  要調(diào)用的函數(shù)名
format:    傳遞給Py_VaBuildValue函數(shù)的可變參數(shù)模板
*/
int PyCall( const char * module, const char * function, const char *format, ... )
{
 PyObject* pMod    = NULL;
 PyObject* pFunc   = NULL;
 PyObject* pParm   = NULL;
 PyObject* pRetVal = NULL;

 //導(dǎo)入模塊
 if( !(pMod = PyImport_ImportModule(module) ) ){
  return -1;
 }
 //查找函數(shù)
 if( !(pFunc = PyObject_GetAttrString(pMod, function) ) ){
  return -2;
 }

 //創(chuàng)建參數(shù)
 va_list vargs;
 va_start( vargs, format );
 pParm = Py_VaBuildValue( format, vargs );
 va_end(vargs);

 //函數(shù)調(diào)用
 pRetVal = PyEval_CallObject( pFunc, pParm);
 
 //假定返回值為整形
 int ret;
 PyArg_Parse( pRetVal, "i", &ret );
 return ret;
}

int main(int argc, char* argv[])
{
 Py_Initialize();

 /* 這做個(gè)簡(jiǎn)單的說(shuō)明
 ** format參數(shù)用()擴(kuò)起來(lái)是表示元組的意思。元組中的個(gè)數(shù)對(duì)應(yīng)Python腳本中的參數(shù)。
 ** 因?yàn)閒un,fun1,fun2函數(shù)的參數(shù)個(gè)數(shù)分別是 0,1,2,所以,元組中的個(gè)數(shù)必須為0,1,2,不然調(diào)用將失
 ** 敗。當(dāng)然,元組中的每個(gè)元素都是可以為任意的類型,比如:
 **     PyCall( "pytest", "fun2", "( i,{s:s,s:s})", 2, "name", "linxr", "age", "25" );
 */
 printf( "ret = %d\n", PyCall( "pytest", "fun",  "()" );
 printf( "ret = %d\n", PyCall( "pytest", "fun1", "(i)",  12 );
 printf( "ret = %d\n", PyCall( "pytest", "fun2", "(is)", 12, "12" );

 Py_Finalize();

 return 0;
}

以上是c調(diào)用python的方法的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

當(dāng)前題目:c調(diào)用python的方法
標(biāo)題URL:http://chinadenli.net/article12/gojddc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供動(dòng)態(tài)網(wǎng)站網(wǎng)站設(shè)計(jì)App開(kāi)發(fā)網(wǎng)站排名自適應(yīng)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站制作