Здравствуйте, Dmi_3, Вы писали:
D_>Если двоеточием разделены выражения имеющие разный тип то каков тип результата и когда такое допустимо?
А такое недопустимо. Типы выражений должны быть одинаковы или приводимыми один к другому.
int main()
{
char a, *b = &a;
char *c = 1 ? 2 : b;
return 0;
}
D:\Temp>g++ test.cpp
test.cpp: In function `int main()':
test.cpp:4: error: operands to ?: have different types
D_> Как преобразуется нОль слева и нУль справа?
Имеется в виду NULL? Так он в C++ определен как 0, в отличие от C, где он (char *)0 (или (void *)0, точно не помню).
... << RSDN@Home 1.1.4 stable rev. 510>>