代码拉取完成,页面将自动刷新
功能介绍:
http
静态文件共享服务- 服务端客户端群控同步功能
群控功能指的是:我在服务端做任何操作,客户端都会同步进行操作;应用场景可以为,群控执行执行脚本流程
c/c++
的编译问题下载编译器:
解压路径/bin
添加到环境变量中go
环境
go env -w CGO_ENABLED=1
go env -w
# 如果没有报错下面不用执行,需要到下载解压之后的/bin中查找有没有匹配的文件
go env -w CC=x86_64-w64-mingw32-gcc
go env -w CXX=x86_64-w64-mingw32-g++
C
语言声明:
- 可以使用相对路径、绝对路径 对于要配置的
CFLAGS
、LDFLAGS
都可以使用。- 编译之后的名字链接库一定要是
lib + 文件名.a
- 一定要有头文件
xxx.h
文件声明要调用的函数名以及结构体等
文件结构:
|project
|
|——————lib
| |——————test.h
| |——————test.c
|——————main.go
//test.h
void test();
void testNumber(int num);
//结构体参数
typedef struct{
char[10] name;
}Test;
void testStruct(Test* test);
//外部函数,golang中传递过去
void external(char c);
//test.c
#include <stdio.h>
#include "test.h"
void test(){
printf("我执行了");
}
void testNumber(int num){
printf("我是数字%d",num);
}
void testStruct(Test* test){
printf("名字:%s",test->name)
}
# 编译test.c
gcc -c test.c
# 链接到test.o
ar rsc libteset.a test.o
编译完成后
文件结构:
|project
|
|——————lib
| |——————test.h
| |——————libtest.a
| |——————test.o
| |——————test.c
|——————main.go
package main
/*
#cgo CFLAGS: -I./lib
#cgo LDFLAGS: -I./lib -ltest
#include "test.h"
*/
import "C"
import "log"
//export External
func External(c C.char) {
log.Println(c)
}
func main() {
C.test()
C.testNumber(C.int(10))
C.testStruct(&C.Temp{
name: C.newString("dpengchen"),
})
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。