小编Ale*_*der的帖子

从C调用Go函数

我正在尝试创建一个用Go程序编写的静态对象与C程序(比如内核模块或其他东西).

我已经找到了关于从Go调用C函数的文档,但是我没有找到关于如何走另一条道路的文档.我发现它是可能的,但很复杂.

这是我发现的:

关于C和Go之间回调的博客文章

Cgo文档

Golang邮件列表帖子

有任何人对此有经验吗?简而言之,我正在尝试创建一个完全用Go编写的PAM模块.

c shared-libraries dynamic-linking go

143
推荐指数
3
解决办法
4万
查看次数

在tmux客户端之间移动窗口

我只是学习tmux而且我没有屏幕经验.我想知道我是否可以将一个tmux客户端中的窗口移动到另一个tmux客户端.我想将我的IRC客户端移动到我的屏幕上的新窗口.

linux tmux

112
推荐指数
2
解决办法
2万
查看次数

从表格中选择一个随机项目

我的目标是从Lua的表中挑选一个随机项目.

这是我到目前为止所做的,但它目前不起作用:

local myTable = { 'a', 'b', 'c', 'd' }
print( myTable[ math.random( 0, #myTable - 1 ) ] )
Run Code Online (Sandbox Code Playgroud)

如何修复上述代码以使其按预期工作?(或者我可以使用哪种其他方法?)

random lua

29
推荐指数
3
解决办法
3万
查看次数

用于在两个其他之间找到颜色的算法 - 在绘制颜色的颜色空间中

当混合蓝色和黄色涂料时,结果是某种绿色.

我有两种颜色:

blue =(0,0,255)

和黄色=(255,255,0)

找到混合两种颜色的结果的rgb颜色的算法是什么,就像使用涂料时一样?算法产生的颜色不一定非常精确.对于上面的例子,它只需要看起来像某种绿色.

提前致谢.

编辑:这个用Go编写的函数,根据LaC的回答为我工作.

func paintMix(c1, c2 image.RGBAColor) image.RGBAColor { 
    r := 255 - ((255 - c1.R) + (255 - c2.R))
    g := 255 - ((255 - c1.G) + (255 - c2.G))
    b := 255 - ((255 - c1.B) + (255 - c2.B))
    return image.RGBAColor{r, g, b, 255}
}
Run Code Online (Sandbox Code Playgroud)

编辑#2 Allthought它设法混合青色和黄色,蓝色和黄色之间的混合变成黑色,这似乎不对.我还在寻找一种有效的算法.

编辑#3这是Go中一个完整的工作示例,使用HLS颜色空间:http://go.pastie.org/1976031.谢谢Mark Ransom.

编辑#4看起来更好的颜色混合的前进方式是使用Kubelka-Munk方程

algorithm rgb colors go color-space

27
推荐指数
2
解决办法
4417
查看次数

在Golang中初始化接口数组

这是一个变量的例子:

names := []interface{}{"first", "second"}

如何从字符串数组中动态初始化?

go

27
推荐指数
3
解决办法
4万
查看次数

如何使用Put_Line方法输出整数?

我无法编译这个程序,因为它似乎不会在Put_Line方法中打印整数变量和字符串.我已经在线查看了源代码,当它们这样做时它可以工作,所以我哪里出错了.谢谢你的帮助.

with Ada.Text_IO;                       use Ada.Text_IO;
with Ada.Integer_Text_IO;           use Ada.Integer_Text_IO;

procedure MultiplicationTable is

    procedure Print_Multiplication_Table(Number :in Integer; Multiple :in Integer) is
        Result : Integer;   
    begin
        for Count in 1 ..Multiple
        loop
            Result := Number * Count;
            Put_Line(Number & " x " & Count & " = " & Result);
        end loop; 
    end Print_Multiplication_Table;
    Number  :   Integer;
    Multiple    :   Integer;

begin
    Put("Display the multiplication of number: ");
    Get(Number);
    Put("Display Multiplication until number: ");
    Get(Multiple);
    Print_Multiplication_Table(Number,Multiple);
end MultiplicationTable;`
Run Code Online (Sandbox Code Playgroud)

ada console-output

12
推荐指数
3
解决办法
3万
查看次数

认识到模板中的值是bool

这个简短的C++ 17程序:

#include <iostream>

template <typename T> void output(T x)
{
    if constexpr (std::is_integral<decltype(x)>::value) {
        std::cout << static_cast<int>(x) << " is integral" << std::endl;
    } else {
        std::cout << x << " is not integral" << std::endl;
    }
}

int main()
{
    char x = 65;
    output(x);

    bool t = true;
    output(t);

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

有这个输出:

65 is integral
1 is integral
Run Code Online (Sandbox Code Playgroud)

在名为的模板函数中output,如何检测参数x是布尔值而不是数字?

计划是输出值std::cout << std::boolalpha <<,但仅限于类型bool.

c++ c++17

11
推荐指数
1
解决办法
1516
查看次数

10
推荐指数
2
解决办法
2万
查看次数

如何从枚举中选择随机值?

纺纱箱有一个枚举有一个大的选择可能微调的.

这是枚举(除跳过顶部和底部4之外的所有值):

pub enum Spinners {
    Dots,
    Dots2,
    Dots3,
    Dots4,
    ...
    Shark,
    Dqpb,
    Weather,
    Christmas,
}
Run Code Online (Sandbox Code Playgroud)

一个新的微调器很容易创建:

extern crate spinners;

use spinners::{Spinner, Spinners};
use std::thread::sleep;
use std::time::Duration;

fn main() {
    let sp = Spinner::new(Spinners::Dots9, "Waiting for 3 seconds".into());
    sleep(Duration::from_secs(3));
    sp.stop();
}
Run Code Online (Sandbox Code Playgroud)

但是,我希望随机选择一个微调器,这不起作用:

let spinner_enum = rng.choose(Spinners).unwrap_or(&Spinners::Dots9);
Run Code Online (Sandbox Code Playgroud)

因为:

error[E0423]: expected value, found enum `Spinners`

let spinner_enum = rng.choose(Spinners).unwrap_or(&Spinners::Dots9);
                              ^^^^^^^^ not a value
Run Code Online (Sandbox Code Playgroud)

如何随机选择枚举值,并使用它来显示随机微调器?

enums rust

10
推荐指数
1
解决办法
2393
查看次数

OCaml是否可以创建单个if(没有其他)

是否可以创建单个if(没有其他)?如果可以使用一个非常有用

ocaml control-structure

9
推荐指数
1
解决办法
4033
查看次数