相关疑难解决方法(0)

为什么用花括号括起C代码块?

我正在看一些C代码,并注意到它充满了围绕代码块的这些花括号,没有任何控制结构.看一看:

//do some stuff . . .
fprintf(stderr, "%.2f sec\n", (float)(clock() - t) / CLOCKS_PER_SEC);
{
    //a block! why not?
    char *tmp_argv[3];
    tmp_argv[0] = argv[0]; tmp_argv[1] = str; tmp_argv[2] = prefix;
    t = clock();
    fprintf(stderr, "[bwa_index] Convert nucleotide PAC to color PAC... ");
    bwa_pac2cspac(3, tmp_argv);
    fprintf(stderr, "%.2f sec\n", (float)(clock() - t) / CLOCKS_PER_SEC);
}
Run Code Online (Sandbox Code Playgroud)

为什么要在代码中插入这样的块?它充满了它们.是否有某种性能优势?一些神秘的C事?为什么???

编辑:此代码来自BWA,这是一个生物信息学程序,使用Burrows-Wheeler变换将小序列与大型参考序列对齐,以防任何人想知道.此代码示例与应用程序的功能并不特别相关.

c scope curly-braces

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

为什么Eclipse要求我在java代码中设置(任意)括号?

我目前正在试图弄清楚如何使用Eclipse在java中编写Escape模型.我是Escape和Eclipse的新手,自从我用java编程以来已经有一段时间了,所以请原谅这是一个愚蠢的问题.

基本上,我一直被奇怪的Eclipse错误消息所困扰.我跟踪了最后一个问题:

这有效:

public class CoordinationGame extends Scape {

.
    .
    .
    Scape lattice;

boolean test;
int test2;

{
test = true;
test2 = 3;
}

{
lattice = new Scape(new Array2DVonNeumann());
}

}
Run Code Online (Sandbox Code Playgroud)

这给出了奇怪的错误消息:

public class CoordinationGame extends Scape {

    .
.
.

Scape lattice;

boolean test;
int test2;

test = true;
test2 = 3;

lattice = new Scape(new Array2DVonNeumann());
}
Run Code Online (Sandbox Code Playgroud)

{预期的int test2Syntax error on token "lattice", VariableDeclaratorId expected after this token.

正如我所说,Java已经有一段时间了,但是IIRC,这些括号不应该被要求. …

java eclipse

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

标签 统计

c ×1

curly-braces ×1

eclipse ×1

java ×1

scope ×1