小编Arj*_*kar的帖子

如何检查单个字符是否出现在字符串中?

在Java中有一种方法来检查条件:

"这个单个字符是否出现在字符串x中"

没有使用循环?

java string validation character

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

Linux:何时使用分散/收集IO(readv,writev)与使用fread的大缓冲区

分散收集(即readvwritev)中,Linux读入多个缓冲区并从多个缓冲区写入.

如果说,我有一个3个缓冲区的向量,我可以使用readv,或者我可以使用单个缓冲区,其大小为3个缓冲区并且可以fread.

因此,我很困惑:应该使用分散/聚集哪些情况以及何时应该使用单个大缓冲区?

linux io

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

在Debian 6.0上安装node.js.

好吧,我有一个使用Debian 6.0的vserver.

现在我想安装Node.js,但网上的教程似乎都不起作用.我已经尝试了谷歌给我的所有结果当我输入"在linux上安装node.js"我大多失败,因为我不知道如何安装依赖项(我是linux btw的新手)

如何在刚安装的Debian系统上安装node.js(所以没有安装程序等等)?

linux installation debian node.js

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

argparse"必修"可选参数

Python的argparse模块具有所谓的"可选"参数.名称以其开头的所有参数---默认情况下是可选的.通常,强制参数是位置参数,因此在运行程序时,它们没有明确命名.

例如,在具有以下内容的脚本中:

parser.add_argument('language', help="Output language")
Run Code Online (Sandbox Code Playgroud)

调用看起来像:

$ hello-world czech
Run Code Online (Sandbox Code Playgroud)

通过名称传递强制参数有时会更好(例如,脚本调用更容易以这种方式阅读),但仍然是强制性的.即

$ hello-world --use-lang czech
Run Code Online (Sandbox Code Playgroud)

怎么做到这一点?命名参数在argparse文档中称为"可选" ,这听起来好像它们不是强制性的.有没有办法让他们成为必修课?

python argparse

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

'main'方法中的JVM指令ALOAD_0指向'args'而不是'this'?

我正在尝试为学术研究实现Java的一个子集.好吧,我处于最后阶段(代码生成),我编写了一个相当简单的程序来查看如何处理方法参数:

class Main {
    public static void main(String[] args) {
        System.out.println(args.length);
    }
}
Run Code Online (Sandbox Code Playgroud)

然后我构建了它,并通过我在以下网址找到的在线反汇编程序运行'Main.class':http: //www.cs.cornell.edu/People/egs/kimera/disassembler.html

我得到了'main'方法的以下实现:(反汇编输出在Jasmin中)

.method public static main([Ljava/lang/String;)V
    .limit locals 1
    .limit stack 2

    getstatic   java/lang/System/out Ljava/io/PrintStream;
    aload_0
    arraylength
    invokevirtual   java/io/PrintStream.println(I)V
    return
.end method
Run Code Online (Sandbox Code Playgroud)

我的问题是:
1.aload_0应该将'this'推送到堆栈(这就是JVM规范似乎说的)
2.arraylength应该返回引用位于堆栈顶部的数组的长度

所以根据我的说法,1和2的组合甚至不应该起作用.

它是如何/为什么有效?或者是反汇编工具,实际的字节码是别的吗?

java jvm bytecode instructions jasmin

21
推荐指数
1
解决办法
6456
查看次数

调整Bash'cd'和TAB完成以识别拼写错误

我正在寻找cd命令的调整,以便它识别目录的拼写错误并自动完成类似的目录名称.

现在,我有一些设置可识别目录的拼写错误,但不会自动完成它们.

对于目录拼写错误更正我有这个代码~/.bashrc:

shopt -s cdspell
Run Code Online (Sandbox Code Playgroud)

现在它按以下方式工作,假设我有一个名为"trash"的目录

vickey@home:~$ cd tras
trash
vickey@home:~/trash$ cd ..
vickey@home:~$ cd trasx
trash
vickey@home:~/trash$ pwd
/home/vickey/trash
vickey@home:~/trash$ 


vickey@home:~$ cd Trash
trash
vickey@home:~/trash$ pwd
/home/vickey/trash
Run Code Online (Sandbox Code Playgroud)

但我遇到的问题是假设我创建一个名为Temp的目录并执行类似的操作

vickey@home:~$ mkdir Temp
vickey@home:~$ cd temp
Temp
vickey@home:~/Temp$ cd ..
vickey@home:~$ cd te #and tab here
test/   textin/ 
Run Code Online (Sandbox Code Playgroud)

它没有显示Temp为一个选项.反正是否使自动完成不区分大小写?

bash cd autocomplete case-insensitive

20
推荐指数
1
解决办法
4803
查看次数

使用JSONPATH解析JSON数组文件

我想用JSONPath解析这个:

[
  [50.4154134372953,-1.28486558931069,"CLASS B",9,205,0,"UK",431500382,3,4],
  [50.3058858494047,-0.976070494820637,"CLASS B",9,239,0,"UK",2750350,21,2]
]
Run Code Online (Sandbox Code Playgroud)

你可以帮忙吗?

arrays json jsonpath

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

在x86机器上移位超过32位的uint64_t整数未定义的行为?

学习困难的方法,我试图在x86机器上左移一个long longuint64_t超过32位0.我依稀记得在32位机器上移动操作符只能在前32位上操作,但不能重新收集源.我想知道是否在x86机器上移动超过32位的uint64_t整数是未定义的行为?

c c++ x86 bit-shift uint64

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

为什么C99会抱怨存储容量?

这是我在Linux上编译的一些代码:

#include <net/if.h>

int main() {
  struct ifreq ifr;
}
Run Code Online (Sandbox Code Playgroud)

gcc test.c 很好.

gcc -std=gnu99 test.c 很好.

gcc -std=c99 test.c 失败,出现以下错误:

test.c: In function ‘main’:
test.c:4:16: error: storage size of ‘ifr’ isn’t known
Run Code Online (Sandbox Code Playgroud)

与C99有什么不同,它不喜欢struct ifreqLinux中的定义?

linux gcc network-programming c99 gnu99

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

Cocoa中的双向映射

Cocoa提供NSDictionary,它基本上是一个关联数组.

有没有一种很好的方法来获得双向关联性?也就是说,如果NSDictionary有一个keyForObject:反映其行为的方法,那就是一种方法objectForKey:.

如果NSDictionary不是这样的话,我真的不在乎.我知道NSDictionary 确实提供了keysOfEntriesPassingTest:但是它返回了一个NSSet *看起来不那么干净我想要的东西.

这是一个例子:

fieldMap = [[NSDictionary alloc] initWithObjectsAndKeys:
    @"c0",@"synckey",
    @"c1",@"wi_id",
    @"c2",@"wi_parent_id",
    @"c3",@"wi_type",
    @"c4",@"wi_rh_task",
    @"c5",@"decision_key",
    @"c6",@"wi_stat",
    @"c7",@"wi_prio",
    @"c8",@"wi_cd",
    @"c9",@"wi_ct",
    @"cb",@"wi_dh_stat",
    @"cc",@"wi_user",
    nil];
Run Code Online (Sandbox Code Playgroud)

我想在c0synckey之间进行转换,然后在其他字段中进行转换.

cocoa dictionary objective-c data-structures

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