PDA

Показать полную графическую версию : [решено] установки флагов формата потоков


bool
01-08-2007, 16:22
небольшой отрывок функции:

ios::fmtflags f;

f=cout.flags();

if(f & ios::skipws) cout << "skiws установлен\n";
else cout << "skipws сброшен\n";

присваиваем переменной f установки флагов формата, и теперь вопрос: оператор & сравнивает поразрядно операнды, но ведь в f все установки флагов, а сравниваем мы её только с skipws, как может получиться, что выражение (f & ios::skipws) даст нам истину?

bool
02-08-2007, 00:11
уже помогли)
т.к. сравнивание идет поразрядное , то получается примерно следующим образом, например f = 11111 , а skipws = 00010. при сравнении получаем : 00010 , т.е. истину 8)




© OSzone.net 2001-2012