如何用Python調(diào)用C代碼?
網(wǎng)友解答: 這里簡單介紹一下吧,其實很簡單,以Linux系統(tǒng)為例,只要將c代碼編譯為.so文件,然后直接調(diào)用就行,下面我簡單介紹一下實現(xiàn)過程,實驗環(huán)境CentOS7+python3.6+
這里簡單介紹一下吧,其實很簡單,以Linux系統(tǒng)為例,只要將c代碼編譯為.so文件,然后直接調(diào)用就行,下面我簡單介紹一下實現(xiàn)過程,實驗環(huán)境CentOS7+python3.6+gcc,主要內(nèi)容如下:
1.編寫c代碼,這里我簡單的編寫了2個測試函數(shù),分別是相加、相減,命名為test.c,主要代碼如下,很簡單:
2.下面將這個test.c文件編譯為test.so文件,前提是安裝好了gcc編譯器,編譯命令“gcc -shared -Wl,-soname,test -o test.so -fPIC test.c”,如下:
編譯成功后,會在當(dāng)前目錄下邊生成一個test.so文件,如下:
3.調(diào)用test.so文件,這里主要用到ctypes這個包,加載test.so文件,就可直接調(diào)用c代碼,測試代碼如下:
程序運(yùn)行結(jié)果如下,已經(jīng)成功調(diào)用:
至此,我們就完成了利用python來調(diào)用c代碼??偟膩碚f,整個過程很簡單,就是先編譯成so文件,然后在調(diào)用,只要熟悉一下流程,很快就能掌握的,調(diào)用windows下的dll類似,這里我就不詳細(xì)介紹了,感興趣的可以自己搜一下,網(wǎng)上也有相關(guān)教程和資料,希望以上分享的內(nèi)容能對你有所幫助吧。