قاسم رمضانی منش 63 ارسال شده در آذر 97 (ویرایش شده) با سلام. به چه روشی میتوان خروجی متن را در لحظه آپدیت کرد. برای مثال کد زیر را در نظر داشته باشید : #include <iostream> int main (void){ for(unsigned int index =10 ; index <= 100 ; index+=10) std::cout << index << '%' << std::endl; return 0; } که خروجی زیر تولید میشه : [ghasem@clibcore AnotherJustForTest]$ g++ -o main main.cpp && ./main 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% خب ! حالا اگر ما بخواهیم همان خط اول فقط آپدیت بشود و از 10% تا 100% را در همان خط چاپ کند و دیگر به خط بعدی نرود چه باید کرد ؟ یه مثال دیگه ... مدیربستههای dnf , apt , pacman که نوارپیشرفتی در خروجی کنسول خود نشان میدن. ویرایش شده در آذر 97 توسط قاسم رمضانی منش نقل قول به اشتراک گذاری این ارسال لینک به ارسال به اشتراک گذاری در سایت های دیگر
1 کامبیز اسدزاده 618 ارسال شده در آذر 97 کُد خود را به صورت زیر تغییر دهید تا در یک خط درصد پیشرفت برای شما چاپ شود: #include <iostream> #include <chrono> #include <thread> int main (void){ for(unsigned int index =10 ; index <= 100 ; index+=10){ std::this_thread::sleep_for(std::chrono::milliseconds(500)); std::cout << "Download from dl.dotwaves.com/source/cell\t" << index << "%" << "\r"; std::cout.flush(); } return 0; } از thread و chrono صرفاً جهت تاخیر استفاده کردم. 2 3 نقل قول به اشتراک گذاری این ارسال لینک به ارسال به اشتراک گذاری در سایت های دیگر
با سلام.
به چه روشی میتوان خروجی متن را در لحظه آپدیت کرد.
برای مثال کد زیر را در نظر داشته باشید :
که خروجی زیر تولید میشه :
خب ! حالا اگر ما بخواهیم همان خط اول فقط آپدیت بشود و از
10%
تا100%
را در همان خط چاپ کند و دیگر به خط بعدی نرود چه باید کرد ؟یه مثال دیگه ... مدیربستههای
ویرایش شده در توسط قاسم رمضانی منشdnf , apt , pacman
که نوارپیشرفتی در خروجی کنسول خود نشان میدن.به اشتراک گذاری این ارسال
لینک به ارسال
به اشتراک گذاری در سایت های دیگر