PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : C++ Methode width() funktioniert nicht mit strings unter linux



move
19-10-2003, 17:12
Hi, wenn ich versuche die Feldbreite mit der Methode
width zu setzen funktioniert das mit strings unter Linux nicht.

Hier ein Beispiel:


#include <iostream>
#include <string>
using namespace std;

void main()
{
string test = "Hallo";
cout.width(20);
cout << test << test << endl;
}

Verwende ich hingegen statt des string ein char Array funktionierts.
Unter Windows mit Visual C++ funktionieren beide Versionen.
Irgendwer ne Ahnung woran das liegen könnte ??

gruß

wraith
19-10-2003, 17:41
Bei mir funktionierts (gcc 3.3.1).
Vielleicht ist in deiner Implementierung ein Bug,welche Version verwendest du?
Der hier hat mit 2.95.2 dasselbe Problem
http://groups.google.de/groups?q=gcc+width+bug+string+cout.width&hl=de&lr=&ie=UTF-8&oe=UTF-8&selm=8ph3jt%244q3%246%40eeyore.INS.CWRU.Edu&rnum=5

move
19-10-2003, 18:38
Hi wraith,
danke daran lags. :)

move@debian:~$ gcc --version
2.95.4

Mit der 3.0.4 funktionierts.

gruß