go語言中.a后綴的文件是什么?可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
網(wǎng)站建設(shè)哪家好,找成都創(chuàng)新互聯(lián)公司!專注于網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、成都小程序開發(fā)、集團企業(yè)網(wǎng)站建設(shè)等服務(wù)項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了惠安免費建站歡迎大家使用!
.a文件是編譯過程中生成的,每個package都會生成對應(yīng)的.a文件,Go在編譯的時候先判斷package的源碼是否有改動,如果沒有的話,就不再重新編譯.a文件,這樣可以加快速度。
生成.a文件(.h文件也會自動生成)
創(chuàng)建文件pkgqrcode.go
package mainimport "C"import ( //"fmt" "github.com/tuotoo/qrcode" "os")//export GetQrcodeStringfunc GetQrcodeString(cstring *C.char) *C.char { //func GetQrcodeString() *C.char { path := C.GoString(cstring) //path := "qrcode.png" fi, err := os.Open(path) if err != nil { //fmt.Println(err.Error()) return C.CString(path) } defer fi.Close() qrmatrix, err := qrcode.Decode(fi) if err != nil { //fmt.Println(err.Error()) return C.CString(path) } //fmt.Println(qrmatrix.Content) //return C.Cstring(qrmatrix.Content) gostr := qrmatrix.Content cstr := C.CString(gostr) return cstr}func main() {}
import "C" 的作用就是go代碼中使用C函數(shù)
需要加//export GetQrcodeString 才會生成.h文件
C.GoString(cstring) 把C字符串轉(zhuǎn)成go字符串
C.CString(gostr) 把go字符串轉(zhuǎn)成C字符串
編譯步驟
生成.a文件命令(進入pkgqrcode.go代碼目錄)執(zhí)行:
go build -buildmode=c-archive -o pkgqrcode.a pkgqrcode.go
生成結(jié)果
pkgqrcode.a
pkgqrcode.h
看完上述內(nèi)容,你們對go語言中.a后綴的文件有進一步的了解嗎?如果還想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀。
當(dāng)前標(biāo)題:go語言中.a后綴的文件是什么
瀏覽路徑:http://aaarwkj.com/article14/gdigde.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器、App開發(fā)、網(wǎng)站策劃、網(wǎng)站設(shè)計、品牌網(wǎng)站設(shè)計、小程序開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)