Topic: No "lowercase" manipulator?


Author: Pete Becker <petebecker@acm.org>
Date: 1998/11/20
Raw View
James Kuyper wrote:
>
> I find that whole section of the standard confusing, but I think that
> nouppercase turns off the conversion of lowercase characters to
> uppercase; it doesn't cause conversion of uppercase characters to
> lowercase.

But not for all characters being written to the stream, only for the
characters that the library itself produces when writing floating point
values, hex values, etc.

--
Pete Becker
Dinkumware, Ltd.
http://www.dinkumware.com


[ comp.std.c++ is moderated.  To submit articles, try just posting with ]
[ your news-reader.  If that fails, use mailto:std-c++@ncar.ucar.edu    ]
[              --- Please see the FAQ before posting. ---               ]
[ FAQ: http://reality.sgi.com/austern_mti/std-c++/faq.html              ]






Author: James Kuyper <kuyper@wizard.net>
Date: 1998/11/18
Raw View
Cristian Georgescu wrote:
>
> There is an "uppercase" manipulator:
>     ios_base& uppercase(ios_base& str);
>     The manipulator effectively calls str.setf(ios_base:: uppercase),
> then returns str.
> But there is no "lowercase" manipulator.
>
> Is this an omission of VC++ 5.3 or is missing from the standard too?

It's not in the standard either; nouppercase doesn't seem to be the
equivalent.
---
[ comp.std.c++ is moderated.  To submit articles, try just posting with ]
[ your news-reader.  If that fails, use mailto:std-c++@ncar.ucar.edu    ]
[              --- Please see the FAQ before posting. ---               ]
[ FAQ: http://reality.sgi.com/austern_mti/std-c++/faq.html              ]





Author: stephen.clamage@sun.com (Steve Clamage)
Date: 1998/11/19
Raw View
In article 27588801@Lehman.com, Cristian Georgescu <CGeorges@lehman.COM> writes:

>There is an "uppercase" manipulator:
>    ios_base& uppercase(ios_base& str);
>    The manipulator effectively calls str.setf(ios_base:: uppercase),
>then returns str.
>But there is no "lowercase" manipulator.

>Is this an omission of VC++ 5.3 or is missing from the standard too?

In the standard, the manipulator you want is spelled "nouppercase".

---
Steve Clamage, stephen.clamage@sun.com




[ comp.std.c++ is moderated.  To submit articles, try just posting with ]
[ your news-reader.  If that fails, use mailto:std-c++@ncar.ucar.edu    ]
[              --- Please see the FAQ before posting. ---               ]
[ FAQ: http://reality.sgi.com/austern_mti/std-c++/faq.html              ]






Author: Cristian Georgescu <Cristian.Georgescu@worldnet.att.net>
Date: 1998/11/19
Raw View

Steve Clamage wrote in message <72vr4q$js3$1@engnews2.Eng.Sun.COM>...
>
>In article 27588801@Lehman.com, Cristian Georgescu <CGeorges@lehman.COM>
writes:
>
>>There is an "uppercase" manipulator:
>>    ios_base& uppercase(ios_base& str);
>>    The manipulator effectively calls str.setf(ios_base:: uppercase),
>>then returns str.
>>But there is no "lowercase" manipulator.
>
>>Is this an omission of VC++ 5.3 or is missing from the standard too?
>
>In the standard, the manipulator you want is spelled "nouppercase".
>
>---
>Steve Clamage, stephen.clamage@sun.com

A "lowercase" would be different from the "nouppercase".


Author: James Kuyper <kuyper@wizard.net>
Date: 1998/11/20
Raw View
Steve Clamage wrote:
>
> In article 27588801@Lehman.com, Cristian Georgescu <CGeorges@lehman.COM> writes:
>
> >There is an "uppercase" manipulator:
> >    ios_base& uppercase(ios_base& str);
> >    The manipulator effectively calls str.setf(ios_base:: uppercase),
> >then returns str.
> >But there is no "lowercase" manipulator.
>
> >Is this an omission of VC++ 5.3 or is missing from the standard too?
>
> In the standard, the manipulator you want is spelled "nouppercase".

I find that whole section of the standard confusing, but I think that
nouppercase turns off the conversion of lowercase characters to
uppercase; it doesn't cause conversion of uppercase characters to
lowercase.
---
[ comp.std.c++ is moderated.  To submit articles, try just posting with ]
[ your news-reader.  If that fails, use mailto:std-c++@ncar.ucar.edu    ]
[              --- Please see the FAQ before posting. ---               ]
[ FAQ: http://reality.sgi.com/austern_mti/std-c++/faq.html              ]





Author: clamage@Eng.Sun.COM (Steve Clamage)
Date: 1998/11/20
Raw View
Cristian Georgescu <Cristian.Georgescu@worldnet.att.net> writes:

>Steve Clamage wrote in message <72vr4q$js3$1@engnews2.Eng.Sun.COM>...
>>
>>In article 27588801@Lehman.com, Cristian Georgescu <CGeorges@lehman.COM>
>writes:
>>
>>>There is an "uppercase" manipulator:
>>>    ios_base& uppercase(ios_base& str);
>>>    The manipulator effectively calls str.setf(ios_base:: uppercase),
>>>then returns str.
>>>But there is no "lowercase" manipulator.
>>
>>>Is this an omission of VC++ 5.3 or is missing from the standard too?
>>
>>In the standard, the manipulator you want is spelled "nouppercase".
>>
>>---
>>Steve Clamage, stephen.clamage@sun.com

>A "lowercase" would be different from the "nouppercase".
>From my understanding:
>    - The uppercase manipulator calls str.setf(ios_base:: uppercase),
>    - The nouppercase manipulator calls str.unsetf(ios_base:: uppercase).
>whereas, the "lowercase"/"nolowercase" manipulators (which seem to be not
>present in the Standard...?) would do the following:
>    - The lowercase manipulator calls str.setf(ios_base:: lowercase),
>    - The nolowercase manipulator calls str.unsetf(ios_base:: lowercase).

There is no "lowercase" flag or manipulator in the standard.

If the "uppercase" flag is set, uppercase letters are used for hex
and floating-point numbers, e.g.: 0X1234, 1.2E34.

If the "uppercase" flag is not set, lowercase letters are used,
e.g.: 0x1234, 1.2e34.

The standard specifies the manipulators "uppercase", which
produces the first result, and "nouppercase", which produces
the second result.

A "lowercase" flag would be redundant, since one bit is sufficient
to choose between two alternatives, and there are only two. That
is why the standard does not specify a "lowercase" flag.

You might argue that "lowercase" is a better way to spell the
manipulator that causes lowercase letters to be used, but the
final C++ standard prescribes the spelling "nouppercase".

--
Steve Clamage, stephen.clamage@sun.com
---
[ comp.std.c++ is moderated.  To submit articles, try just posting with ]
[ your news-reader.  If that fails, use mailto:std-c++@ncar.ucar.edu    ]
[              --- Please see the FAQ before posting. ---               ]
[ FAQ: http://reality.sgi.com/austern_mti/std-c++/faq.html              ]





Author: Pete Becker <petebecker@acm.org>
Date: 1998/11/20
Raw View
Cristian Georgescu wrote:
>
>
> A "lowercase" would be different from the "nouppercase".
> From my understanding:
>     - The uppercase manipulator calls str.setf(ios_base:: uppercase),
>     - The nouppercase manipulator calls str.unsetf(ios_base:: uppercase).
> whereas, the "lowercase"/"nolowercase" manipulators (which seem to be not
> present in the Standard...?) would do the following:
>     - The lowercase manipulator calls str.setf(ios_base:: lowercase),
>     - The nolowercase manipulator calls str.unsetf(ios_base:: lowercase).

There is no iosbase::lowercase. In this situation nouppercase is exactly
what's wanted, because these only affect things like the 'x' in
displaying hexadecimal values and the 'f' in displaying floating point
values. Specifying nouppercase does not result in mixed case, it results
in lowercase.

--
Pete Becker
Dinkumware, Ltd.
http://www.dinkumware.com
---
[ comp.std.c++ is moderated.  To submit articles, try just posting with ]
[ your news-reader.  If that fails, use mailto:std-c++@ncar.ucar.edu    ]
[              --- Please see the FAQ before posting. ---               ]
[ FAQ: http://reality.sgi.com/austern_mti/std-c++/faq.html              ]





Author: Cristian Georgescu <CGeorges@lehman.COM>
Date: 1998/11/18
Raw View
There is an "uppercase" manipulator:
    ios_base& uppercase(ios_base& str);
    The manipulator effectively calls str.setf(ios_base:: uppercase),
then returns str.
But there is no "lowercase" manipulator.

Is this an omission of VC++ 5.3 or is missing from the standard too?

--
                      Cristian Georgescu
_________________________________________________
                      email: CGeorges@lehman.com
                      tel:   (212) 526-3502

    _/      _/_/_/_/  Lehman Brothers
   _/      _/    _/   Equity Finance Systems
  _/      _/_/_/_/    World Financial Center
 _/      _/    _/     200 Vesey Street
_/_/_/  _/_/_/_/      New York, NY 10285.
_________________________________________________
---
[ comp.std.c++ is moderated.  To submit articles, try just posting with ]
[ your news-reader.  If that fails, use mailto:std-c++@ncar.ucar.edu    ]
[              --- Please see the FAQ before posting. ---               ]
[ FAQ: http://reality.sgi.com/austern_mti/std-c++/faq.html              ]