c_cpp 标准输出的进度条

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c_cpp 标准输出的进度条相关的知识,希望对你有一定的参考价值。

#include <iostream>

void showProgressBar(const float prog = 0) {
  const int width = 50; // characters
  std::cout << "[";
  int pos = (int) (width * prog);
  for (int i = 0; i < width; ++i) {
    if(i < pos) {
      std::cout << "=";
    } else if(i == pos) {
      std::cout << ">";
    } else {
      std::cout << " ";
    }
  }
  std::cout << "] " << (int) (100*prog) << "%\r";
  std::cout.flush();
}
  }
  std::cout << "] " << (int) (100*prog) << "%\r";
  std::cout.flush();
}

void sleepMs(unsigned int ms) {
    int microsecs;
    struct timeval tv;
    microsecs = ms * 1000;
    tv.tv_sec  = microsecs / 1000000;
    tv.tv_usec = microsecs % 1000000;
    select(0, NULL, NULL, NULL, &tv);
}

int main() {
  for (float i = 0; i <= 100; ++i) {
    sleepMs(20); // to show progress animation
    showProgress(i/100);
  }
  std::cout << std::endl;
  showProgress(0.09);
  std::cout << std::endl;
}

以上是关于c_cpp 标准输出的进度条的主要内容,如果未能解决你的问题,请参考以下文章

c_cpp 命令行进度条

Python 进度条原理

c_cpp 进度条的一个漂亮的小可自定义视图,具有可选的动画属性

15 行 Java 代码实现一个标准输出的进度条,其中的知识点你知道但并不一定会用...

15 行 Java 代码实现一个标准输出的进度条,其中的知识点你知道但并不一定会用...

15 行 Java 代码实现一个标准输出的进度条,其中的知识点你知道但并不一定会用...