Schleife mit 0000

stimon

Mitglied
Hallo,

wie kann man eine Schleife machen die von 0000...0010...0999(also immer eine Null weg nachdem 9, 99, 999 erreicht ist) Zahlen ausgibt?

Danke in Voraus
Gruß stimon
 
Da printf und Konsorten zur Standardbibliothek gehören, sollte man sie unabhängig vom Compiler verwenden können. Es ist lediglich darauf zu achten, dass die richtigen Headerdateien eingebunden werden.
 
ja, ok, aber da wo die 0000 erscheinen sollen, setzten sich aus mehreren Strings zusammen. Also (Schleife; String + String + 0000 + String;)

ich hoffe du kannst mir helfen,bitte!

Gruß stimon
 

Hi.

Beim nächsten Mal solltest am besten gleich angeben welche Programmiersprache bzw. welchen Compiler du verwendest. Wenn du C++ programmierst, schreib "[c++]" in den Titel des Themas.

In C++ kannst du das z.B. so realisieren:

Code:
#include <iostream>
#include <iomanip>
#include <sstream>

using namespace std;

const string prefix = "foo";
const string suffix = ".txt";

for (int i = 0; i < 10000; ++i) {
  ostringstream fname;
  
  fname << prefix << setfill ('0') << setw (4) << i << suffix;

  cout << fname.str () << endl;
}

Wenn du bei der C-Stil printf Variante bleiben willst, dann lies dir einfach mal die Dokumentation zu der Funktion bzw. zur sprintf Funktion durch.

Gruß
 
Danke!!

Und wie funktioniert das mit AnsiString?
AnsiString +(<<) setfill( '0' ) +(<<) setw(4) +(<<) AnsiString geht nicht, weil + und << nicht implementiert ist.
Was kann ich da machen, oder kann man dass nicht irgend wie selber schreiben!?
Gruß stimon
 
Zurück