Linux用make指令編譯進(jìn)度條程序
本文實例為大家分享了Linux下寫一個簡單進(jìn)度條的具體代碼,供大家參考,具體內(nèi)容如下
首先建立一個新的文件,touch progress_bar.c 執(zhí)行該vim progress_bar.c命令,寫進(jìn)度條的程序。寫進(jìn)一個進(jìn)度條程序:
#include<stdio.h> #include<unistd.h> #include<string.h> void progress() { int i = 0; char bar[102]; memset(bar,0,102*sizeof(char)); const char* lable="|/-\\"; while(i <= 100) { bar[i] = '#'; printf("[%-101s] [%d%%] [%c]",bar,i,lable[i%4]); fflush(stdout); usleep(100000); i++; } printf("\n"); } int main() { progress(); return 0; }
如圖:
該代碼中需要注意的小細(xì)節(jié):
1. const char* lable=”|/-\\”; 直接輸入一個\會被系統(tǒng)認(rèn)為是轉(zhuǎn)義,所以要輸入\\
2. printf(“[%-101s] [%d%%] [%c]”,bar,i,lable[i%4]);這里的%%同上,防止轉(zhuǎn)義。rate%4防止溢出
3. fflush(stdout); 參數(shù)為標(biāo)準(zhǔn)輸出流
4. 因為sleep默認(rèn)單位為秒,不便于測試,usleep默認(rèn)單位為微秒
最后,進(jìn)行調(diào)試,建立一個mymakefile文件,touch mymakefile對該文件進(jìn)行編輯vim mymakefile。
myprogress_bar:progress_bar.c g++ -o myprogress_bar progress_bar.c :PHONY clean clean: rm -f myprogress_bar
如圖所示:
然后執(zhí)行make命令,對progress_bar.c文件進(jìn)行編譯,make -f mymakefile,即生成myprogress_bar文件,用./myprogress_bar對他進(jìn)行執(zhí)行。若想重新進(jìn)行編譯,則需要make -f mymakefile clean指令,先對文件progress_bar進(jìn)行清除,再用make進(jìn)行編譯。
如圖:
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Centos7學(xué)習(xí)之添加用戶和用戶組的方法
本篇文章主要介紹了Centos7學(xué)習(xí)之添加用戶和用戶組的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-09-09Linux中對lvm邏輯卷分區(qū)大小的調(diào)整教程(針對xfs與ext4不同文件系統(tǒng))
這篇文章主要給大家介紹了關(guān)于Linux中對lvm邏輯卷分區(qū)大小的調(diào)整教程(針對xfs與ext4不同文件系統(tǒng))的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2018-10-10Linux備份及恢復(fù)及Linux文件權(quán)限詳解
這篇文章主要介紹了Linux備份及恢復(fù)及Linux文件權(quán)限詳解的相關(guān)資料,需要的朋友可以參考下2017-05-05