У меня есть этот кодмакрос в визуальной студии 2015: ожидается выражение
// show_time.c
#include <time.h>
#include <stdio.h>
#define _timer() ({((double)(clock()))/CLOCKS_PER_SEC;})
int main() {
int i, j;
double timer = _timer();
for (i = 0; i < 1000; i++)
for (j = 0; j < 10000; j++)
i*j;
printf("%f", _timer() - timer);
return 0;
}
с gcc
работают отлично, я получаю время. Но в Visual Studio 2015 отмечен _timer
expected an expression
,
работает с gcc, потому что '({..})' является выражением gnu stament https://gcc.gnu.org/onlinedocs/gcc/Statement-Exprs.html ... теперь я знаю – JuanPablo