множественные возвращаемые значения в функции

Я столкнулся со следующим примером:

#include <stdio.h>

// test multiple return                                                                                                                                                             
int foo()
{
    return 1,2,3,4,5,6;
}

// main entry point                                                                                                                                                                 
int main(int argc, char* argv[])
{
    printf("foo returns: %d\n", foo());
    return 0;
}

скомпилируйте его, затем запустите:

gcc main.cpp -o main
./main

Результаты меня сбивают с толку:

foo returns: 6

Вопрос: почему нет ошибки времени компиляции?

5
задан egor7 26 January 2012 в 09:01
поделиться