C++ manipuliatorius endl Funkcija naudojama įterpti naują eilutės simbolį ir išplauti srautą.
Endl manipuliatoriaus veikimas panašus į „ “ simbolį C++. Kitoje eilutėje jis išspausdina šio teiginio išvestį.
Sintaksė
for ostream ostream& endl (ostream& os); basic template template basic_ostream& endl (basic_ostream& os);
Parametras
tu : paveiktas išvesties srauto objektas.
Grąžinimo vertė
Tai grąžina argumentą tu .
Duomenų lenktynės
Modifikuoja srauto objekto OS.
Jei bandysime vienu metu pasiekti tą patį srauto objektą, tai gali sukelti duomenų lenktynes, išskyrus standartinius srauto objektus cerr, cout, wcout, clog, wcerr ir wclog, kai jie sinchronizuojami su stdio.
abėcėlė pagal skaičius
Išimtis Sauga
Objektas tu yra tinkamos būsenos, jei yra išimta.
1 pavyzdys
Pažiūrėkime paprastą pavyzdį, kaip parodyti endl naudojimą:
#include using namespace std; int main() { cout << 'Hello' << endl << 'World!'; return 0; }
Išvestis:
Hello World!
2 pavyzdys
Pažiūrėkime dar vieną paprastą pavyzdį:
#include using namespace std; int main() { int num; cout<>num; cout<<'hello roll number '<<num<<endl; cout<<'welcome to your new class!!'; return 0; } < pre> <p> <strong>Output:</strong> </p> <pre> Enter your roll number: 22 Hello roll number 22 Welcome to your new class!! </pre> <h2>Example 3</h2> <p>Let's see another simple example:</p> <pre> #include // std::cout, std::end using namespace std; int main () { int a=100; double b=3.14; cout << a; cout << endl; // manipulator inserted alone cout << b << endl << a*b; // manipulator in concatenated insertion endl (cout); // endl called as a regular function return 0; } </pre> <p> <strong>Output:</strong> </p> <pre> 100 3.14 314 </pre> <h2>Example 4</h2> <p>Let's see another simple example:</p> <pre> #include #include using namespace std; template void log_progress(Diff d) { cout << chrono::duration_cast(d).count() << ' ms passed' << endl; } int main() { cout.sync_with_stdio(false); // on some platforms, stdout flushes on volatile int sink = 0; auto t1 = chrono::high_resolution_clock::now(); for (int j=0; j<5; ++j) { for (int n="0;" n<10000; ++n) m="0;" m<20000; ++m) sink +="m*n;" do some work auto now="chrono::high_resolution_clock::now();" log_progress(now - t1); } return 0; < pre> <p> <strong>Output:</strong> </p> <pre> 435 ms passed 894 ms passed 1326 ms passed 1747 ms passed 2178 ms passed </pre></5;></pre></'hello>
3 pavyzdys
Pažiūrėkime dar vieną paprastą pavyzdį:
#include // std::cout, std::end using namespace std; int main () { int a=100; double b=3.14; cout << a; cout << endl; // manipulator inserted alone cout << b << endl << a*b; // manipulator in concatenated insertion endl (cout); // endl called as a regular function return 0; }
Išvestis:
100 3.14 314
4 pavyzdys
Pažiūrėkime dar vieną paprastą pavyzdį:
#include #include using namespace std; template void log_progress(Diff d) { cout << chrono::duration_cast(d).count() << ' ms passed' << endl; } int main() { cout.sync_with_stdio(false); // on some platforms, stdout flushes on volatile int sink = 0; auto t1 = chrono::high_resolution_clock::now(); for (int j=0; j<5; ++j) { for (int n="0;" n<10000; ++n) m="0;" m<20000; ++m) sink +="m*n;" do some work auto now="chrono::high_resolution_clock::now();" log_progress(now - t1); } return 0; < pre> <p> <strong>Output:</strong> </p> <pre> 435 ms passed 894 ms passed 1326 ms passed 1747 ms passed 2178 ms passed </pre></5;>5;>'hello>