Я написал код оператора sizeof
. Если я напишу что-то вроде:
#include <stdio.h>
int main() {
char a[20];
printf("%zu\n", sizeof(a));
return 0;
}
Вывод:
20 // Ok, it fine
Но, если я использую оператор запятая следующим образом:
#include <stdio.h>
int main() {
char a[20];
char b;
printf("%zu\n", sizeof(b, a));
return 0;
}
Вывод:
8 // Why the output 8?
Итак, у меня есть вопросы:
- Почему компилятор дает вывод
8
во втором примере? - Каково поведение оператора
comma
в оператореsizeof()
?