小编Cor*_*urn的帖子

特殊的writef/writefln行为?

所以我一直在看D大约15分钟,所以难怪我有疑问,但是有些奇怪的事情发生在我身上.

我从安装d 这里和Visual d从这里,我跑在Visual Studio 2010专业版的一切.D示例编译并运行,调试器似乎工作正常.

在浏览dsource.org的基础教程时,我正在阅读Wait部分,当我注意到如果你使用writef而不是writefln那么输出的最后一行在暂停打印.

这是示例的代码:

import std.c.stdio; /* for getch() */
import std.process; /* for system() */
import std.stdio; /* for writefln */

void main() { 
    writefln("Press a key (using 'std.c.stdio.getch();' to wait) . . .");
    getch();

    writefln("Waiting again\n(using 'system(\"pause\");'):");
    system("pause");
}
Run Code Online (Sandbox Code Playgroud)

这里是我的,注意,唯一的变化是writefln,以writef

import std.c.stdio; /* for getch() */
import std.process; /* for system() */
import std.stdio; /* for writefln */ …
Run Code Online (Sandbox Code Playgroud)

d

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

获取MessageDigest可以使用的每个算法?

MessageDigest在您要哈希时使用一个字符串来表示要使用的算法.我在这里使用了一些代码来在我的Android设备上累积一个相当大的220"算法"列表.我使用它们作为算法迭代所有它们,MessageDigest并且它们中很少实际产生哈希.

我怎样才能在运行时确定哪些哈希值MessageDigest会产生输出而不尝试每一个?

hash android

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

BinaryReader ReadString指定长度?

我正在研究解析器以接收UDP信息,解析它并存储它.为此,我使用的是BinaryReader因为它主要是二进制信息.其中一些将是字符串.MSDN说ReadString()功能:

从当前流中读取字符串.该字符串以长度为前缀,一次编码为整数7位.

我完全理解它,直到"一次七位",我试图忽略,直到我开始测试.我在创建自己的字节数组之前将其放入a MemoryStream并尝试使用a读取它BinaryReader.这是我最初认为会起作用的:

byte[] data = new byte[] { 3, 0, 0, 0, (byte)'C', (byte)'a', (byte)'t', }
BinaryReader reader = new BinaryReader(new MemoryStream(data));
String str = reader.ReadString();
Run Code Online (Sandbox Code Playgroud)

知道一个int是4个字节(并且足够长时间找到它BinaryReader是Little Endian)我传给它3的长度和相应的字母.然而str最终举行\0\0\0.如果我删除3个零并且只是

byte[] data = new byte[] { 3, (byte)'C', (byte)'a', (byte)'t', }
Run Code Online (Sandbox Code Playgroud)

然后它Cat正确地读取和存储.对我来说,这与文档冲突说长度应该是一个整数.现在我开始认为它们只是指一个没有小数位而不是数据类型的数字int.这是否意味着a BinaryReader永远不会读取大于127个字符的字符串(因为那将是01111111,对应于文档的7位部分)?

我正在编写一个协议,需要在将文档传递给客户之前完全理解我正在进行的工作.

c# binaryreader

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

jquery.maskedinput 允许在掩码中间使用可选字符吗?

我有一个简单的文本框,它具有以下掩码:

$('#txt_DateOfBirth').mask('99/99/9999');
Run Code Online (Sandbox Code Playgroud)

有时会以编程方式加载一个与掩码不完全匹配的正确日期(即一位数的月份或日期)。如果它加载了这样的日期,一旦输入框获得焦点,它就会恢复为__/__/____. 无论是否进行了更改,当输入框失去焦点时,动态加载的日期都会返回。它由以下人员设置:

$('txt_DateOfBirth').val(date); // example: date holds "12/1/1949" as string
Run Code Online (Sandbox Code Playgroud)

由于日期与掩码不完全匹配,因此似乎破坏了掩码输入。如何在掩码中间添加可选字符?

jquery maskedinput

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

如何使用<-chan和chan <-进行单向通信?

我正在努力了解Go的频道。我想我理解基本的双向知识,chan但是我在理解<-chan和理解方面欠缺chan<-

我希望它们对于与线程通信的一种方式很有用,但是我在实际读取和接收值的线程方面遇到问题。

package main

import (
    "fmt"
    "time"
)

func Thread(c chan<- int) {
    for {
        num := <-c
        fmt.Println("Thread : ", num)
        time.Sleep(time.Second)
    }
}

func main() {
    c := make(chan<- int, 3)
    go Thread(c)
    for i := 1; i <= 10; i++ {
        c <- i
    }
    for len(c) > 0 {
        time.Sleep(100)
    }
}
Run Code Online (Sandbox Code Playgroud)

我已经尝试使用<-chan,而不是chan<-make(),但这样的事情发生了:

C:\>go run chan.go
# command-line-arguments
.\chan.go:10: invalid operation: <-c (receive …
Run Code Online (Sandbox Code Playgroud)

channel go

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

在插件的任务之前运行我的任务?

我们使用gradle文件来构建Java WAR文件.我对gradle知之甚少.在build.gradle的顶部:

apply plugin: 'java'
apply plugin: 'maven'
apply plugin: 'war'
Run Code Online (Sandbox Code Playgroud)

我们用gradle gradle clean install.我不确定这些任务的定义在哪里,但我认为它们是在其中一个插件中(我猜war).

当我运行gradle clean install它似乎打印它运行的任务:

:clean
:compileJava
:processResources
:classes
:war
:install
Run Code Online (Sandbox Code Playgroud)

如果我错了,请纠正我,但似乎任务install依赖于compileJava,processResourcesclasses,和war.

我需要一个我写过的任务,以便在clean之前的某个时间运行war.优选地,不修改插件.

我已经尝试过表明我的任务,mustRunAfter processResources但它没有那样工作.

如何在依赖install之前将我的任务作为依赖注入war

gradle

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

C#获取/设置BIOS设置?

我使用的是戴尔XPS M1710.笔记本电脑的盖子上有灯,侧面扬声器和前置扬声器(可以单独调节的3组灯)和鼠标垫下的灯.在BIOS中,我可以改变这些灯的颜色,至少每组.此外,我可以在鼠标垫下打开/关闭灯光,我无法改变它的颜色,只要它点亮就可以交替.笔记本电脑附带了很多来自戴尔的软件,但我安装了Windows 7并丢失了所有应用程序,包括允许我更改这些浅色的应用程序.现在戴尔的应用程序已经不见了,我有兴趣制作我自己的C#应用​​程序来改变这三组灯的颜色(我不特别关心改变鼠标垫下的灯光,我喜欢它).我如何开发应用程序以检索和更改这些BIOS设置?

c# bios windows-7

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

是否有有效的算法将返回所有不同的组合?

编辑:我的意思是组合,而不是PERMUTATIONS

是否有有效的算法可以返回给定数组中的所有不同的排列?["A","B","C","D","E","F","G","H","I","J","K",......]

例如:AB,AC,AD,..,DE,..,HI,..,ABC,ABD,...,DEF,..,CDEFG,...,ABCDEFGHIJK,....

我发现了一些算法,但它们返回所有排列而不是不同的排列.通过不同我的意思是:

  1. AB&BA是相同的排列

  2. DEF&FED和EFD&DFE是相同的排列,

algorithm combinations

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

如何表明需要删除返回值?

我通常不是C++开发人员.我通常的语言都是垃圾收集,他们为我做的工作,但C++让我感兴趣.

关于动态分配的对象或结构,我有一两个问题.我的理解是它们必须动态分配,因此数据在堆中而不是堆栈中.如果我错了,请纠正我.

返回指针的最佳做法是什么?假设我正在编写一个库,如何在代码中指示是否应该删除返回的指针?如果我返回一个数组,我该如何返回数组的大小?

这些不是我在C#或javascript中必须面对的问题.这些问题都有两个方面:如果我使用别人的图书馆,我该怎么办?

c++ memory-management

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

为什么纯 Typescript 项目包含 .d.ts 定义?

为什么打字稿项目包括 .d.ts 定义......似乎适得其反?

如果已经在 TypeScript 中开发了一个库(比如 Angular2),并且 TS 转译器可以使用源 .ts 文件进行智能,为什么我一直在 TS 项目中看到 .d.ts 文件被包含在内?

现在确定您可以通过 tsd 可执行文件轻松生成 .d.ts 定义,但我看不到逻辑。

问候,

肖恩

typescript

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