小编Ale*_*der的帖子

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

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

ocaml control-structure

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

为什么有必要将中断处理程序函数标记为静态?

在阅读Robert Love的"Linux内核开发"时,我在第119页找到:

中断处理程序通常标记为静态,因为它永远不会直接从另一个文件调用.

例如:

static irqreturn_t intr_handler(int irq, void *dev)
Run Code Online (Sandbox Code Playgroud)

但为什么会这样呢?我怀疑这个函数是否会由内核调用,如果我们将其设置为静态,那么内核将如何调用它呢?

c linux linux-device-driver

7
推荐指数
1
解决办法
714
查看次数

\n\r \n是多少字节?

我有一个试图ftp文件的.NET应用程序,但我最终每行增加1个字节.我的行分隔符是Environment.NewLine,我认为它转换为\n\r.这是多少字节?

byte ascii newline character-encoding

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

将两个列表合并为一个多维列表

我想将两个列表合并为一个2d列表.

list1=["Peter", "Mark", "John"]
list2=[1,2,3]
Run Code Online (Sandbox Code Playgroud)

list3=[["Peter",1],["Mark",2],["John",3]]
Run Code Online (Sandbox Code Playgroud)

python list

6
推荐指数
1
解决办法
1万
查看次数

在64位Linux上使用中断0x80

我有一个简单的64位汇编程序,用于打印'O'和'K'后跟换行符.但是,'K'永远不会打印出来.程序的目标之一是将rax寄存器的低位中的值打印为ASCII字母.该程序专门用于64位Linux,用于教育目的,因此不需要使用C风格的系统调用.

我怀疑这个问题要么mov QWORD [rsp], rax或是mov rcx, rsp.

目前,该程序仅输出"O"后跟换行符.

如何更改程序以使其使用rax中的值然后打印"K"以使完整输出为"OK",然后换行?

bits 64

section .data

o:  db "O"      ; 'O'
nl: dq 10       ; newline

section .text

;--- function main ---
global main         ; make label available to the linker
global _start       ; make label available to the linker
_start:             ; starting point of the program
main:               ; name of the function

;--- call interrupt 0x80 ---
mov rax, 4          ; function call: 4
mov rbx, 1          ; …
Run Code Online (Sandbox Code Playgroud)

linux assembly stack x86-64 system-calls

6
推荐指数
1
解决办法
5023
查看次数

二叉树的智能指针

如果我有一个二叉树,其中每个节点只包含指向子节点的指针,那么unique_ptr效果非常好.如果我希望每个节点都有一个父指针,那么情况就不那么好了,因为一个节点可能有三个指向它的指针:带有父指针的二进制树

在这种情况下我该怎么办?我可以shared_ptr用于所有事情,但我被告知它不是一个好的设计,因为我可能会得到周期.如果我使用a weak_ptr作为父指针,shared_ptr我从哪创建它weak_ptr

哪种类型的指针适合二叉树?

c++ pointers c++11

6
推荐指数
1
解决办法
906
查看次数

用于查找连接输入和输出的公式的算法

我似乎记得已经学会了一种方法来找到连接表中输入和输出的公式.例如:

a b c | r
1 1 0 | 0
0 1 1 | 1
1 1 1 | 1
Run Code Online (Sandbox Code Playgroud)

其中"r"是结果,a,b和c是输入.该方法涉及具有许多未知数的方程式,最终得到了解释所有的公式.(这是一个没有意义的例子,因为r = c,但你明白了).

但是,我不记得细节,也没有足够的关键字能够在网上找到它.教授这种方法的主题还包括很多布尔代数.

我知道这是一个模糊的问题,但是从价值表中找到公式的方法是什么呢?

algorithm boolean formula

5
推荐指数
2
解决办法
497
查看次数

如何获得 cgo (golang) 的语法高亮

cgo 在 go 中写在“comments”中,这意味着默认情况下它被赋予注释语法突出显示。有适当的 golangC 语法突出显示会很好但在 cgo 文件中。

package main

// ... C code or #include here ...
import "C"

... Go code here ...
Run Code Online (Sandbox Code Playgroud)

例子

无论是 Visual Studio Code 还是 ViM,我都喜欢这个。

如何做到这一点?

syntax-highlighting go cgo visual-studio-code

5
推荐指数
1
解决办法
914
查看次数

避免通过函数调用更新innerHTML后重新加载页面

当通过使用innerHTML的函数更改html元素时,html元素会发生变化,但页面会立即重新加载,并且该元素会设置回其原始值。如何避免这种情况?

我意识到我可能错过了一些非常重要的东西,并且对提出这个问题感到有点尴尬。但是,我用谷歌搜索了这个问题,但找不到答案。如果有人能花一点时间让我在 html、javascript、css 和 php 的森林中走上正确的道路,我将在其中尝试找到自己的出路,我将非常感激。

<!DOCTYPE html>
<html>
    <head>
        <title>Question stackoverflow</title>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
    </head>
    <body>
        <div>
            <p id="test"> This should be changed after button click </p>
            <form>
                <button onclick="test()">Refresh</button>
            </form>     
        </div>
        <script>
        function test(){
                document.getElementById("test").innerHTML = "replaced";
            }
        </script>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

html javascript

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

Nunit中Classic和Constraint Model Assertions有什么区别?

我正在通过阅读文档来学习Nunit-2.6.3.我有点怀疑.

经典模型和约束模型断言之间有什么区别?

断言的哪种模式是最好的,为什么?

nunit unit-testing assert assertion

2
推荐指数
1
解决办法
583
查看次数

具有多个根的编程语言

2 ^( - 1/3)的答案是三个根:

0.79370,-0.39685-0.68736i和0.39685 + 0.68736i(约)

请参阅Wolfram Alpha的正确答案.

我知道有几种支持复数的语言,但它们只返回三个结果中的第一个:

蟒蛇:

>>> complex(2,0)**(-1/3)
(0.7937005259840998-0j)
Run Code Online (Sandbox Code Playgroud)

八度:

>> (2+0i)^(-1/3)
ans = 0.79370
Run Code Online (Sandbox Code Playgroud)

朱莉娅:

julia> complex(2,0)^(-1/3)
0.7937005259840998 + 0.0im
Run Code Online (Sandbox Code Playgroud)

我正在寻找的东西是:

>> 2^(-1/3)
[0.79370+0i, -0.39685-0.68736i, 0.39685+0.68736i]
Run Code Online (Sandbox Code Playgroud)

是否有一种编程语言(带有REPL)可以正确地返回所有三个根,而不必求助于任何特殊的模块或库,它们也有可用的开源实现?

python programming-languages octave complex-numbers julia

2
推荐指数
1
解决办法
182
查看次数

没有返回类型定义的main()函数会发出警告

这是我的计划:

main()
{ 
    printf("hello world\n");
}
Run Code Online (Sandbox Code Playgroud)

编译时我收到此警告:

function should return a value
Run Code Online (Sandbox Code Playgroud)

当改变main()void main()时,警告消失.

为什么会这样?

c types program-entry-point return

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