Logik hinter der Cout -Formatierung in diesem Fall [geschlossen]
Posted: 06 Feb 2025, 05:24
Meine Referenz ist auf die folgende Logik, die im Code-Segment im folgenden Link dargestellt wird: < /p>
11: Referenzen und der Kopierkonstrukteur < /p>
Bevor Sie die Ausgabe anzeigen
11: Referenzen und der Kopierkonstrukteur < /p>
Bevor Sie die Ausgabe anzeigen
Code: Select all
//: C11:Linenum.cpp
//{T} Linenum.cpp
// Add line numbers
#include "../require.h"
#include
#include
#include
#include
#include
using namespace std;
int main(int argc, char* argv[]) {
requireArgs(argc, 1, "Usage: linenum file\n"
"Adds line numbers to file");
ifstream in(argv[1]);
assure(in, argv[1]);
string line;
vector lines;
while(getline(in, line)) // Read in entire file
lines.push_back(line);
if(lines.size() == 0) return 0;
int num = 0;
// Number of lines in file determines width:
const int width =
int(log10((double)lines.size())) + 1;
for(int i = 0; i < lines.size(); i++) {
cout.setf(ios::right, ios::adjustfield);
cout.width(width);
cout