python 呼叫c語言函式

2021-08-21 03:39:51 字數 739 閱讀 9378

雖然python是萬能的,但是對於某些特殊功能,需要c語言才能完成。這樣,就需要用python來呼叫c的**了

具體流程:

c編寫相關函式 ,編譯成庫

然後在python中載入這些庫,指定呼叫函式。

這些函式可以char ,int, float, 還能返回指標。

以下示例:

通過python呼叫c函式,返回"hello,world 字串"

新建c語言檔案 hello.c

touch hello.c

#include char*get_str() 

編譯成庫

gcc -o hello.so --share -fpic hello.c

新建python指令碼

touch test.py

from ctypes import * dll = cdll("./hello.so") dll.get_str.restype = c_char_p str = dll.get_str() print(string_at(str, 11))

執行python指令碼

[feng@arch python_c]$ python test.py 

hello,world

python呼叫C語言裡面的函式

在arm做接收dtu引數的時候,始終無法獲取到dtu對映檔案 dev dtu 裡面的資料 可能沒找到方法 剛開始用os去開啟 usr bin python coding utf 8 import os fd os.open dev dtu os.o rdwr ret os.read fd,10 pr...

c語言呼叫cpp函式 C語言 函式的遞迴呼叫

乙個函式在呼叫的過程 現直接或者間接呼叫該函式本身的情況,稱為遞迴呼叫,這種函式稱為遞迴函式 在寫遞迴函式時,需要解決如下兩個問題 1 遞迴的出口條件 2 遞迴公式 遞迴函式的 一般為 if 遞迴出口條件 返回符合出口條件的函式值或輸出結果 else 遞迴公式 雖然演算法一致,但n不同,y不同,在記...

C 呼叫Python語言

是一種在 net和 mono 上實現的 python 語言 2.開啟vs,新增兩個引用,在ironpython的安裝根目錄下面選擇ironpython.dll和microsoft.scripting.dll using microsoft.scripting.hosting using ironpy...