Linux用make指令編譯進(jìn)度條程序
本文實(shí)例為大家分享了Linux下寫一個(gè)簡(jiǎn)單進(jìn)度條的具體代碼,供大家參考,具體內(nèi)容如下
首先建立一個(gè)新的文件,touch progress_bar.c 執(zhí)行該vim progress_bar.c命令,寫進(jìn)度條的程序。寫進(jìn)一個(gè)進(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=”|/-\\”; 直接輸入一個(gè)\會(huì)被系統(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. 因?yàn)閟leep默認(rèn)單位為秒,不便于測(cè)試,usleep默認(rèn)單位為微秒
最后,進(jìn)行調(diào)試,建立一個(gè)mymakefile文件,touch mymakefile對(duì)該文件進(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命令,對(duì)progress_bar.c文件進(jìn)行編譯,make -f mymakefile,即生成myprogress_bar文件,用./myprogress_bar對(duì)他進(jìn)行執(zhí)行。若想重新進(jìn)行編譯,則需要make -f mymakefile clean指令,先對(duì)文件progress_bar進(jìn)行清除,再用make進(jìn)行編譯。
如圖:

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
深入解讀Linux進(jìn)程函數(shù)fork(),vfork(),execX()
這篇文章主要介紹了深入解讀Linux進(jìn)程函數(shù)fork(),vfork(),execX(),分享了相關(guān)代碼示例,小編覺得還是挺不錯(cuò)的,具有一定借鑒價(jià)值,需要的朋友可以參考下2018-01-01
apache下支持asp.net的實(shí)現(xiàn)方法
讓apache支持asp.net的設(shè)置步驟。2009-12-12
解決Linux常用命令“l(fā)l”失效或命令未找到的問題
這篇文章主要介紹了Linux常用命令“l(fā)l”失效或命令未找到的問題及解決方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-06-06
詳解如何在 CentOS7.0 上搭建DNS 服務(wù)器
BIND也叫做NAMED,是現(xiàn)今互聯(lián)網(wǎng)上使用最為廣泛的DNS 服務(wù)器程序,本篇文章主要介紹了如何在 CentOS7.0 上搭建DNS 服務(wù)器,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-05-05
解決CentOS7.6 yum報(bào)錯(cuò)GPG密鑰不匹配:GPG Keys are c
文章主要講述了在使用yum安裝`devtoolset-8-gcc*`時(shí)遇到GPG密鑰不匹配的問題,并提供了兩種解決方法:一是檢查并修正.repo文件中的GPG密鑰設(shè)置,二是同時(shí)保留阿里云和CentOS官方的GPG密鑰,最終成功安裝了gcc2025-03-03
CentOS 6.2 下升級(jí)安裝為MySQL 5.5的方法
使用系統(tǒng)CentOS 6.2本來已經(jīng)系統(tǒng)自帶安裝了mysql 5.1,但是奈何5.1不支持utf8mb4字符集,只能想辦法將Mysql升級(jí)到5.52014-11-11
linux grep查找的結(jié)果中顯示匹配行的上下行內(nèi)容方式
這篇文章主要介紹了linux grep查找的結(jié)果中顯示匹配行的上下行內(nèi)容方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-11-11

