会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
Binb
博客园
首页
新随笔
联系
订阅
管理
上一页
1
···
7
8
9
10
11
12
13
14
15
···
23
下一页
2020年5月30日
CGO实战-封装qsort函数
摘要: qsort快速排序函数是C语言的高阶函数,支持用于自定义排序比较函数,可以对任意类型的数组进行排序。本节我们尝试基于C语言的qsort函数封装一个Go语言版本的qsort函数。 认识qsort函数 qsort快速排序函数有<stdlib.h>标准库提供,函数的声明如下: void qsort( vo
阅读全文
posted @ 2020-05-30 09:19 Binb
阅读(470)
评论(0)
推荐(0)
2020年5月29日
CGO内部机制
摘要: CGO内部机制 CGO生成的中间文件 要了解CGO技术的底层秘密首先需要了解CGO生成了哪些中间文件。我们可以在构建一个cgo包时增加一个-work输出中间生成文件所在的目录并且在构建完成时保留中间文件。如果是比较简单的cgo代码我们也可以直接通过手工调用go tool cgo命令来查看生成的中间文
阅读全文
posted @ 2020-05-29 20:23 Binb
阅读(721)
评论(0)
推荐(0)
CGO函数调用
摘要: CGO函数调用 函数是C语言编程的核心,通过CGO技术我们不仅仅可以在Go语言中调用C语言函数,也可以将Go语言函数导出为C语言函数。 Go调用C函数 对于一个启用CGO特性的程序,CGO会构造一个虚拟的C包。通过这个虚拟的C包可以调用C语言函数。 package main /* static in
阅读全文
posted @ 2020-05-29 13:57 Binb
阅读(1705)
评论(0)
推荐(0)
CGO类型转换
摘要: #类型转换 最初CGO是为了达到方便从Go语言函数调用C语言函数(用C语言实现Go语言声明的函数)以复用C语言资源这一目的而出现的(因为C语言还会涉及回调函数,自然也会涉及到从C语言函数调用Go语言函数(用Go语言实现C语言声明的函数))。现在,它已经演变为C语言和Go语言双向通讯的桥梁。要想利用好
阅读全文
posted @ 2020-05-29 11:12 Binb
阅读(2155)
评论(0)
推荐(0)
2020年5月28日
CGO基础
摘要: #CGO基础 要使用CGO特性,需要安装C/C++构建工具链,在macOS和Linux下是要安装GCC,在windows下是需要安装MinGW工具。同时需要保证环境变量CGO_ENABLED被设置为1,这表示CGO是被启用的状态。在本地构建时CGO_ENABLED默认是启用的,当交叉构建时CGO默认
阅读全文
posted @ 2020-05-28 21:07 Binb
阅读(1221)
评论(0)
推荐(0)
2020年5月26日
Go net/http代理
摘要: share/share.go /****** ** @创建时间 : 2020/5/25 20:26 ** @作者 : SongZhiBin ******/ package share import ( "fmt" "net/http" "net/http/httputil" "net/url" "o
阅读全文
posted @ 2020-05-26 13:58 Binb
阅读(532)
评论(0)
推荐(0)
2020年5月16日
GO-中间件(Middleware )
摘要: 中间件是一种计算机软件,可为操作系统提供的软件应用程序提供服务,以便于各个软件之间的沟通,特别是系统软件和应用软件。广泛用于web应用和面向服务的体系结构等。 纵观GO语言,中间件应用比较普遍,主要应用: 记录对服务器发送的请求(request) 处理服务器响应(response ) 请求和处理之间
阅读全文
posted @ 2020-05-16 23:12 Binb
阅读(498)
评论(0)
推荐(0)
Go如何巧妙使用runtime.SetFinalizer
摘要: runtime.SetFinalizer func SetFinalizer(obj interface{}, finalizer interface{}) SetFinalizer sets the finalizer associated with obj to the provided fin
阅读全文
posted @ 2020-05-16 17:29 Binb
阅读(3437)
评论(0)
推荐(0)
2020年5月12日
ARM基础
摘要: ARM基础 ARM主要有7个基本工作模式 User:非特选模式,大部分任务执行在这种模式 FIQ:当一个高优先级(fast)中断产生时会进入这种模式 IRQ:当一个低优先级(normal)中断产生时将会进入这种模式 Supervisor:当复位或软中断指令时将会进入这种模式 Abort:当存取异常时
阅读全文
posted @ 2020-05-12 16:39 Binb
阅读(459)
评论(0)
推荐(0)
2020年5月11日
SQLift基础
摘要: 基于嵌入式的数据库 基于嵌入式Linux的数据库主要有SQLift,Firebird,Berkeley DB,eXtremeDb Friebird是关系型数据库,功能强大,支持存储过程,SQL兼容等 SQLite关系型数据库,体积小,支持ACID事务 Berkeley DB中并没有数据库服务器的概念
阅读全文
posted @ 2020-05-11 21:46 Binb
阅读(529)
评论(0)
推荐(0)
上一页
1
···
7
8
9
10
11
12
13
14
15
···
23
下一页
公告