小编odz*_*hko的帖子

为什么在一个表达式中同时使用左移和右移会有所不同?

我有以下代码:

unsigned char x = 255;
printf("%x\n", x); // ff

unsigned char tmp = x << 7;
unsigned char y = tmp >> 7;
printf("%x\n", y); // 1

unsigned char z = (x << 7) >> 7;
printf("%x\n", z); // ff
Run Code Online (Sandbox Code Playgroud)

我会期望y并且z是一样的。但它们因是否使用中间变量而异。知道为什么会这样会很有趣。

c operators bit-shift integer-promotion language-lawyer

39
推荐指数
3
解决办法
1202
查看次数

如何在 VS Code 中设置连续缩进?

这是我想要实现的格式:

function x() {
    $elementOfSomething
            .find(".class")
            .remove();
}
Run Code Online (Sandbox Code Playgroud)

这是 VSCode 默认的格式:

function x() {
    $elementOfSomething
        .find(".class")
        .remove();
}
Run Code Online (Sandbox Code Playgroud)

默认缩进为 4 个空格。在第二个示例中,第三行和第四行相对于前一行缩进了 4 个空格。在第一个示例中,它们缩进 8 个空格。所以我希望默认缩进为 4 个空格,但继续缩进为 8 个空格。在 NetBeans 中,为此设置了“连续缩进”。有没有办法在 VSCode(对于 JS 和 Java)中实现这种缩进行为?

visual-studio-code

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