1. 程式人生 > >Linux下c實現簡易進度條

Linux下c實現簡易進度條

#進度條:顧名思義就是看計算機處理任務時的速度,完成度,反正過程啥的。就是這樣子

我們實現一個簡易版的

我們需要的知識make命令編譯:因為方便。不瞭解make指令的先看看make指令介紹

我們下來開始寫程式碼細聊

打算

#include<stdio.h>
#include<unistd.h>
void probar()
{
    int rate=0;//進度率,表示我們這個進度走了%多少了
    char bar[102]={0};//0-100應該101個,為什麼會102個呢,因為第102個我們給他設定為空。
    //0我們不列印“=”
    const char *sta="-\\|/";//有時間我們看進度條不知道它是卡了
    //還是在執行呢,所以我們就見後面有個圓圈的一樣的東西在閃
    //我們也是設定一個這樣的好區別我們的程式是卡了還是在執行
    while(rate <= 100)
    {   
        printf("[%-100s],%d%%,[%c]\r",bar,rate,sta[rate%4]);
        usleep(9500);//休眠時間sleep()引數是秒,庫為unistd.h,還有一個休眠函式usleep();它的引數為微秒
        fflush(stdout);//清除讀寫緩衝區
        bar[rate]= '=';
        rate++;
        bar[rate]='\0';
    }   

}
int main()
{
    probar();
    return 0;
}
$vim makefile

main:main.c
    gcc -o main main.c
clean:
    rm -f main
$make


相關推薦

Linuxc實現簡易進度

#進度條:顧名思義就是看計算機處理任務時的速度,完成度,反正過程啥的。就是這樣子 我們實現一個簡易版的 我們需要的知識make命令編譯:因為方便。不瞭解make指令的先看看make指令介紹 我們下

Linux實現簡易進度

本文將要概述 printf的緩衝區問題; \r和\n的區別; 如何實現一個簡易的進度條; 奇怪的現象 進度條是安裝和下載軟體中常見的部分,它可以表示軟體安裝或下載了多大,能給客戶一種直觀的感受,今天我們就來實現一個簡易的進度條,基本構思是這樣的,我們定

Linuxc實現域名轉IP的方法封裝

rrd dbv mvm com inf adk lan fad bho 蝕古戮一爸下戀墩諂棧鐘啥材諭http://jz.docin.com/kjr58937 囪弛探刻煌俺厴嘲蹤以洶趴敵柿http://www.docin.com/app/user/userinfo?useri

linuxc++ 實現單例模式

singleton.h,下面是原始碼#include <unistd.h> #include <pthread.h> using namespace std; class Lock { private: pthr

linux C++實現 ARP釋出,和ARP監聽

改造自http://blog.csdn.net/xiaodao1986/article/details/6628250 g++ -o即可編譯通過。 ubuntu 14.04 可以用適當的方法,在寢室裡,讓室友不能上網。 #include <stdio.h>

Linux系統簡易進度實現

在我們安裝軟體或開啟遊戲時,會看到進度條的身影。今天我們就來在linux下實現一個簡易的進度條 1 . 在任意一個目錄下,touch jdt.c 檔案 vi jdt.c 2. 按 Z

Linux簡易進度實現【轉】

在生活中,進度條是很常見的,那麼,進度條是如何實現的呢?   首先,進度條的動態是利用人眼視覺暫留效果的。實際上是如下過程: 先輸出:[=                                               ]表示進度是1%,重新整理之後 再

Linuxc語言實現進度

顏色的處理 要想把進度條加上顏色,我們只需要在需要顯示顏色的部分輸入顏色編號即可,但是要在最後用\033[0m關閉所有屬性,不然程式執行後會在執行後的後續文字中也變為我們之前所設定的顏色。 通過控制符即可設定我們需要的顏色: \033[30m– \033[

Linux實現彩色進度程式

程式碼: #include <stdio.h> #include <unistd.h> #include <string.h> int main() { int i = 0; char bar[101]; const char *la

Linux實現彩色進度

#include <stdio.h>

linuxc語言利用iconv函式實現utf-8轉unicode

    由於專案中需要轉換原生unicode到ascii的功能,本來想的用的是linux或者windows自帶的寬位元組轉成窄位元組的函式,但由於本身使用了apr_iconv庫,所以直接使用庫函式來解決。     期間碰到了庫函式使用一直出錯的問題,一

linuxC/C++網路程式設計基本:socket實現tcp和udp的例子

簡單的linux下socket程式設計,分別基於TCP和UDP協議實現的簡單程式 linux下socket程式設計可以概括為以下幾個函式的運用: socket() bind() listen

Linux c語言ftp伺服器簡單實現

     這個程式轉載自http://aijiekj.blog.163.com/blog/static/12986678920112321853230/ 原來的程式沒有註釋,最近這段時間在學習網路程式設計這塊,就在網上找了個程式來學習,第一次找的程式下載下來後,編譯沒通過,

linuxc/c++例項之十四c實現的bt軟體下載(記錄)

一、簡介        可能許多人使用過位元彗星(BitComet)、位元精靈(BitSpirit)、迅雷下載過自己喜歡的影片、電視劇、網路遊戲;還有很多人使用過PPLive、PPStream、沸點、QQ直播等免費的網路電視直播軟體線上觀看自己喜歡的影片。所有這些軟體都採

linuxC語言__FILE__,__LINE__,FUNCTION__實現程式碼跟蹤除錯

__FILE__,__LINE__,FUNCTION__實現程式碼跟蹤除錯(linux下C語言程式設計 )先看下簡單的初始程式碼:注意其編譯執行後的結果。 [email protected]:~/cpropram/2# cat global.h //標頭檔案 #

LinuxC語言實現獲取當前時間

C語言獲取當前時間 簡介 在工作中,經常涉及到獲取當前時間,用於寫日誌,基於此,今特意利用C語言寫一個獲取時間函式,用於後面用到時,能夠及時查到。獲取當前時間,要用到time.h中的time()和localtime()函式,二者具體介紹與使用,參見 ht

linux C++如何實現多執行緒

多執行緒是多工處理的一種特殊形式,多工處理允許讓電腦同時執行兩個或兩個以上的程式。一般情況下,兩種型別的多工處理:基於程序和基於執行緒。 基於程序的多工處理是程式的併發執行。 執行緒的多工處理是同一程式的片段的併發執行。 多執行緒程式包含可以同時執行的兩個或多個

LinuxC語言實現C/S模式程式設計(附原始碼,執行截圖)

由標題可知,這篇部落格主要講如何用C語言實現一個C/S模式的程式。 主要功能:時間回送。 客戶機發出請求,伺服器響應時間,並返回伺服器時間,與客戶機進行同步。 廢話不多說,下面直接貼出原始碼。 程式碼如下: #include <stdio.h> #include

Linuxc++呼叫自己編寫的matlab函式:通過mcc動態連結庫.so實現

之前在這裡和這裡呼叫了matlab自帶的一些函式,是通過matlab引擎來實現的。那裡呼叫的是matlab自帶的函式,那麼如果想呼叫自己寫的.m函式該怎麼辦呢?其實很簡單,原理類似,方法也不止一種。這篇筆記我先嚐試通過mcc將.m函式編譯成動態連結庫供c++呼叫的方式。在另

LinuxC程式設計-----IO/檔案操作/記憶體對映 實現簡單記錄儲存(3)

利用linux下的檔案記憶體對映可以實現程序共享資料,我們可以把一個檔案對映到虛擬記憶體中使多個程序進行共享, 到這裡我們大概能想到他能應用到的領域 是很廣泛的  主要涉及到 mmap  munmap   msync 三個函式的應用 下面貼程式碼  下面一段程式碼是為檔案