 |
www.elektronik.si Forum o elektrotehniki in računalništvu
|
Poglej prejšnjo temo :: Poglej naslednjo temo |
Avtor |
Sporočilo |
twom Član


Pridružen-a: Ned 26 Okt 2003 0:37 Prispevkov: 986 Aktiv.: 4.15 Kraj: Ljubljana
|
Objavljeno: Sre Dec 19, 2007 6:49 am Naslov sporočila: C++ std::cout težava |
|
|
V programu naredim 10x4 space separated tabelo, leva poravnava (vrednosti od -20.0 do +20.0)
Izpisujem v zanki s
std::cout << std::setiosflags(std::ios::left) << std::setw(8 ) << std::setprecision(1) << value;
Vrstico zaključim s std::cout << std::endl;
Težava je, da vedno dobim desno poravnavo.
Če preskočim del kode z meritvami (in "nakjučno" generiram tabelo) pa mi tabelo izšiše tako, kot želim z levo poravnavo.
Sem brez ideje kaj je narobe in kaj naj naredim.
Lp,
Peter |
|
Nazaj na vrh |
|
 |
chaos Član


Pridružen-a: Sob 16 Sep 2006 22:12 Prispevkov: 1063 Aktiv.: 4.64 Kraj: Zagorje ob Savi
|
Objavljeno: Sre Dec 19, 2007 12:37 pm Naslov sporočila: Re: C++ std::cout težava |
|
|
Lahko pripneš cel program oz. relevanten del kode?
Jaz tukaj ne vidim, v čem je problem. A se ti vsi stolpci poravnajo desno? A nastaviš width za vse stolpce? A že kje prej v programu spreminjaš stream format flage? Poskusi resetirati flage (resetiosflags) pred tem izpisom.
Sem na hitro preizkusil:
Koda: |
cout << setiosflags( ios::left ) << setw( 6 ) << values1[i] << resetiosflags( ios::left ) << setw( 10 ) << setprecision( 1 ) << values2[i] << endl;
|
... pa dela normalno ...
LP! |
|
Nazaj na vrh |
|
 |
twom Član


Pridružen-a: Ned 26 Okt 2003 0:37 Prispevkov: 986 Aktiv.: 4.15 Kraj: Ljubljana
|
Objavljeno: Sre Dec 19, 2007 3:01 pm Naslov sporočila: |
|
|
Hvala za namig!
Na začetek vrstice
std::cout << std::setiosflags(std::ios::left) << std::setw(8 ) << std::setprecision(1) << value;
sem dodal še << std::resetiosflags(std::ios::right) in sedaj deluje kakor sem hotel.
Sem mislil da std::setiosflags(std::ios::left) override-a predhodno std::setiosflags(std::ios::right) komando (ki jo uporabljam pri predhodnih izpisih).
Lp,
Peter |
|
Nazaj na vrh |
|
 |
|
|
Ne, ne moreš dodajati novih tem v tem forumu Ne, ne moreš odgovarjati na teme v tem forumu Ne, ne moreš urejati svojih prispevkov v tem forumu Ne, ne moreš brisati svojih prispevkov v tem forumu Ne ne moreš glasovati v anketi v tem forumu Ne, ne moreš pripeti datotek v tem forumu Ne, ne moreš povleči datotek v tem forumu
|
Uptime: 8 dni
Powered by phpBB © 2001, 2005 phpBB Group
|