中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

wordpress連接丟失百度seo關(guān)鍵詞排名推薦

wordpress連接丟失,百度seo關(guān)鍵詞排名推薦,做貿(mào)易選哪家網(wǎng)站,房地產(chǎn)市場現(xiàn)象前言 在我們的日常生活中,進(jìn)度條是十分常見的,比如在軟件下載中,應(yīng)用加載中等等~~~那么進(jìn)度條有什么特點(diǎn)?他又如何實(shí)現(xiàn)。 下面我們將結(jié)合下面的圖展開講解 一、前置理論知識(shí) 1.1回車和換行的區(qū)別 在我們的日常生活中&#x…

前言? ?

? ? ? ? 在我們的日常生活中,進(jìn)度條是十分常見的,比如在軟件下載中,應(yīng)用加載中等等~~~那么進(jìn)度條有什么特點(diǎn)?他又如何實(shí)現(xiàn)。

下面我們將結(jié)合下面的圖展開講解

一、前置理論知識(shí)

1.1回車和換行的區(qū)別?

在我們的日常生活中,回車和換行似乎是相同的事情,但是事實(shí)上

  • 回車:光標(biāo)回到當(dāng)前行的左端
  • 換行:跳轉(zhuǎn)到當(dāng)前的下一行
  • 在C語言中"\n"表示回車加換行,"\r"單單指的是回車;

PS:現(xiàn)在我們鍵盤上的ENTER同時(shí)兼?zhèn)淞嘶剀嚭蛽Q行的功能

我們可以看到在老式的鍵盤中回車鍵的符號(hào)和對應(yīng)的形狀都是一個(gè)先向下再向左的箭頭。也就是說這一個(gè)鍵同時(shí)實(shí)現(xiàn)了兩個(gè)功能。

1.2緩存區(qū)的概念

在C語言中,緩存區(qū)是一種存儲(chǔ)空間,用于存儲(chǔ)程序中經(jīng)常使用的變量和數(shù)據(jù)。緩存區(qū)的目的是提高程序的運(yùn)行速度,當(dāng)程序需要訪問一個(gè)變量或數(shù)據(jù)時(shí),處理器會(huì)先檢查緩存區(qū)中是否存在該數(shù)據(jù)的副本,如果存在,則直接訪問緩存區(qū)中的數(shù)據(jù),而不是從內(nèi)存中讀取。這樣可以減少內(nèi)存訪問次數(shù),提高程序的執(zhí)行速度。

在C語言中會(huì)默認(rèn)打開三個(gè)輸入輸出的文件,分別是標(biāo)準(zhǔn)輸入流stdin,標(biāo)準(zhǔn)輸出流stdout,標(biāo)準(zhǔn)錯(cuò)誤stderr。

在我們平時(shí)的程序中,從程序中輸出的數(shù)據(jù)或者鍵盤上讀取的數(shù)據(jù)會(huì)先存到一個(gè)緩存區(qū)中,在需要時(shí)經(jīng)行讀取和截?cái)唷?#xff08;比如:在printf函數(shù)調(diào)用中輸入帶有空格的字符串,空格后的數(shù)據(jù)未被訪問,存入緩存區(qū))

1.2.1“\n”和“\r”在緩沖區(qū)中的作用效果差別

  • 在Linux中我們經(jīng)常說一句話:萬物皆文件。也就是Linux系統(tǒng)認(rèn)為顯示器是文件,鍵盤是文件。在我們使用printf函數(shù)會(huì)將緩存區(qū)的數(shù)據(jù)讀取到顯示器上。
  • 要注意的是顯示器默認(rèn)是行刷新,也就是當(dāng)輸出內(nèi)容配上“\n”后會(huì)直接回車+換行并立刻將內(nèi)容打印在屏幕上,待睡眠結(jié)束后,才會(huì)彈出操作框;

  • 而當(dāng)輸出內(nèi)容配上“\r”后,其會(huì)先輸出到緩沖區(qū)中,待睡眠結(jié)束后才會(huì)和操作框一起輸出
 printf("hello Makefile!\n");先行打印,待睡眠結(jié)束后才彈出操作框printf("hello Makefile!\r");待睡眠結(jié)束后才會(huì)和操作框一起打印

1.2.2fflush函數(shù)

  • fflush是一個(gè)在C語言標(biāo)準(zhǔn)輸入輸出庫中的函數(shù),功能是沖洗流中的信息,該函數(shù)通常用于處理磁盤文件。fflush()會(huì)強(qiáng)迫將緩沖區(qū)內(nèi)的數(shù)據(jù)寫回參數(shù)stream 指定的文件中。
  • 在下面代碼塊中,"hello Makefile!"本來應(yīng)該待睡眠結(jié)束后才會(huì)和操作框一起彈出,在此之前存儲(chǔ)在緩沖區(qū)中;但我們用了fflush(stdout);(stdout是其數(shù)據(jù)類型),直接將內(nèi)容從緩沖區(qū)中寫回顯示器文件中;
  • 最終完成的效果是:先行打印,待睡眠結(jié)束后才彈出操作框
#include <stdio.h>
int main()
{printf("hello Makefile!\r");fflush(stdout);sleep(3);return 0;
}

?二、Linux中的先行配置

在Linux中我們一般使用gcc命令去完成代碼的預(yù)處理、編譯、匯編、連接的工作。而對于一個(gè)多文件形成的程序我們通常使用Linux項(xiàng)目自動(dòng)化構(gòu)建工具-make/Makefifile。可以說會(huì)不會(huì)寫makefile反映出一個(gè)人有無能力去完成大型工程的能力。

雖然進(jìn)度條只由三個(gè)文件組成但是這不失為一種練習(xí)vim,makefile的手段。

  • 用vim分別建立【main.c】【makefile】【processbar】【processBar.c】【processbar.h】,可視具體情況設(shè)置,文末有簡略代碼;
  • makefile文件如圖所示

> - ./processbar 執(zhí)行程序

三、進(jìn)度條的重點(diǎn)部分

1、設(shè)計(jì)進(jìn)度條的主體部分

這里我們單獨(dú)實(shí)現(xiàn)進(jìn)度條功能,所以我們需要一個(gè)東西來模擬下載的速度從而讓進(jìn)度條以可以被觀測的方式來實(shí)現(xiàn)。

sleep/usleep(time)讓程序休眠time秒。每次休眠結(jié)束后更新進(jìn)度條,在運(yùn)行時(shí)就像進(jìn)度條真的在加載什么。


將進(jìn)度條顯現(xiàn)在屏幕上我們一般會(huì)用printf函數(shù),那么我們究竟需要展現(xiàn)什么?

以這個(gè)為例,我們需要一條代表下載進(jìn)度的線,表示已經(jīng)下載的百分比和一些動(dòng)態(tài)的符號(hào)表示程序的進(jìn)行。

進(jìn)度線:一個(gè)大小為102char數(shù)組(預(yù)留兩個(gè)位置放"\0")

百分比:一個(gè)int變量

動(dòng)態(tài)符號(hào):一個(gè)固定的字符串比如:| / - \,然后在

那么我們的初代主體代碼為

void processbar(int speed)
{char bar[102];const char *lable="|/-\\";memset(bar, '\0', sizeof(bar));int len =strlen(lable);int cnt=0;while(cnt <= 100){   printf("[%-100s][%d%%][%c]\r", bar, cnt, lable[cnt%len]);fflush(stdout); bar[cnt++]=BODY;if(cnt<100)bar[cnt]='>';usleep(speed);}printf("\n");
}
這里注意兩點(diǎn)一是 ‘ / ’ 的表示和‘ % ’ 的表示。

但是現(xiàn)實(shí)情況大多是傳入進(jìn)度來顯示進(jìn)度條。

所以我們將代碼經(jīng)行些許修改。?

四、完整代碼

#include"processbar.h"
#include <string.h>
#include <unistd.h>
const char *lable="|/-\\";char bar[NUM];
void initbar() 
{memset(bar, '\0', sizeof(bar));
}
void processbar(int rate)
{if(rate<0||rate>100)return;int len =strlen(lable);printf("[%-100s][%d%%][%c]\r", bar, rate, lable[rate%len]);fflush(stdout); bar[rate++]=BODY;if(rate<100)bar[rate]=RIGHT;
}
#pragma once
#include<stdio.h>
#define NUM 102//預(yù)留兩個(gè)位置放\0
#define TOP 100
#define BODY '-'
#define RIGHT '>'
extern  void processbar(int speed);
extern void initbar();
#include"processbar.h"
#include<unistd.h>
typedef void(*callback_t)(int);
//模擬下載
void downLoad(callback_t cb)
{initbar();int total = 100;//100mbint curr = 0;//0mbwhile(curr <= total){usleep(10000);//模擬下載時(shí)間int rate=curr*100/total;cb(rate);curr++;}printf("\n");
}int main()
{downLoad(processbar);return 0;
}

http://www.risenshineclean.com/news/30921.html

相關(guān)文章:

  • 哪個(gè)網(wǎng)站做網(wǎng)銷更好網(wǎng)站頁面的優(yōu)化
  • 手機(jī)做直播官方網(wǎng)站西安seo關(guān)鍵詞排名優(yōu)化
  • 禹州做網(wǎng)站bz3399百度一下你就知道百度官網(wǎng)
  • 蘭州市建設(shè)廳網(wǎng)站2021年經(jīng)典營銷案例
  • eclipse做網(wǎng)站怎么優(yōu)化網(wǎng)站性能
  • 什么網(wǎng)站可以做兼職美工教育培訓(xùn)報(bào)名
  • 標(biāo)書制作員工資很低嗎seo關(guān)鍵詞排名優(yōu)化費(fèi)用
  • 做網(wǎng)站營銷蘭州seo外包公司
  • 四川成都私人網(wǎng)站建設(shè)百度問答app下載
  • 企業(yè)網(wǎng)站建設(shè)個(gè)人博客2345網(wǎng)址導(dǎo)航設(shè)為主頁
  • 公司做網(wǎng)站流程快速seo關(guān)鍵詞優(yōu)化技巧
  • 幫人做網(wǎng)站一個(gè)多少錢環(huán)球網(wǎng)疫情最新動(dòng)態(tài)
  • 廣東省住房和建設(shè)局官方網(wǎng)站百度搜索引擎工作原理
  • 小說主題+wordpressseo網(wǎng)站優(yōu)化知識(shí)
  • 個(gè)人手機(jī)網(wǎng)站開發(fā)站長工具日本
  • 網(wǎng)站雙語怎么做免費(fèi)的編程自學(xué)網(wǎng)站
  • 鮮花網(wǎng)站建設(shè)的目標(biāo)百度賬號(hào)
  • 企業(yè)建站平臺(tái)哪個(gè)好深圳有實(shí)力的seo公司
  • 網(wǎng)站規(guī)劃與建設(shè)步驟愛站網(wǎng)收錄
  • 網(wǎng)站建設(shè) 柳州青島網(wǎng)站建設(shè)微動(dòng)力
  • 個(gè)人網(wǎng)站設(shè)計(jì)與制作設(shè)計(jì)思路合肥網(wǎng)絡(luò)推廣有限公司
  • wordpress 網(wǎng)銀支付seo專業(yè)培訓(xùn)課程
  • 免費(fèi)做自我介紹網(wǎng)站網(wǎng)站流量分析
  • 青島定制網(wǎng)站建設(shè)關(guān)鍵詞優(yōu)化排名公司
  • 昆明制作企業(yè)網(wǎng)站的公司競價(jià)托管的注意事項(xiàng)
  • 惠州做網(wǎng)站公司哪家好競價(jià)推廣價(jià)格
  • 小程序 微網(wǎng)站南寧網(wǎng)站關(guān)鍵詞推廣
  • 做網(wǎng)站的圖片Pc端和手機(jī)端的區(qū)別青島愛城市網(wǎng)app官方網(wǎng)站
  • 官方網(wǎng)站如何做外貿(mào)seo推廣招聘
  • 網(wǎng)上訂酒店 網(wǎng)站開發(fā)百度知道客服電話