¿Por qué encerrar bloques de código C entre llaves?
Estoy mirando un código C, y he notado que está lleno de llaves que rodean los bloques de código sin ningún tipo de estructura de control. Echa un vistazo:
//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);
}
¿Por qué insertar bloques como este en el código? Está lleno de ellos. ¿Hay algún tipo de beneficio de rendimiento? ¿Alguna cosa mística de C? ¿¿¿Por qué???
editar:Este código es deBWA, un programa de bioinformática que alinea secuencias pequeñas con secuencias de referencia grandes utilizando elBurrows-Wheeler transform, en caso de que alguno de ustedes se estuviera preguntando. Este ejemplo de código no es particularmente relevante para la funcionalidad de la aplicación.