国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

一文帶你玩轉(zhuǎn)C語言文件操作

這篇具有很好參考價值的文章主要介紹了一文帶你玩轉(zhuǎn)C語言文件操作。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

作者主頁:?paper jie的博客_CSDN博客

本文作者:大家好,我是paper jie,感謝你閱讀本文,歡迎一建三連哦。

本文錄入于《系統(tǒng)解析C語言》專欄,本專欄是針對于大學生,編程小白精心打造的。筆者用重金(時間和精力)打造,將算法基礎(chǔ)知識一網(wǎng)打盡,希望可以幫到讀者們哦。

其他專欄:《算法詳解》《C語言》《C語言-語法篇》等

內(nèi)容分享:本期將對c語言文件操作進行詳細的講解

目錄

為什么需要使用文件

什么是文件

程序文件

數(shù)據(jù)文件

文件名

文件的打開和關(guān)閉

文件指針

文件的打開和關(guān)閉

?文件的順序讀寫

?fgetc和fputc

?fgets和fputs

fscanf,sscanf 和 fprintf,srpintf

fread和fwrite

文件的隨機讀寫

?fseek

ftell

rewind?

文本文件和二進制文件

文件讀取結(jié)束的判定

被錯誤使用的feof

文件緩沖區(qū)


為什么需要使用文件

在前面的結(jié)構(gòu)體文章中,我們可以用它寫一個通訊錄的程序,當通訊錄運行后,可以給通訊錄增加,刪除數(shù)據(jù),這個時候數(shù)據(jù)是存儲在內(nèi)存中的,當程序結(jié)束后,通訊錄里的數(shù)據(jù)就被還給操作系統(tǒng)了。這里就涉及到了我們的數(shù)據(jù)持久化的問題。我們把數(shù)據(jù)持久化一般有兩種方法:1 數(shù)據(jù)存放到磁盤中 2 數(shù)據(jù)存放到數(shù)據(jù)庫中。

使用文件我們就是可以將數(shù)據(jù)存放到電腦的磁盤上,使數(shù)據(jù)持久化。

什么是文件

磁盤上的文件就是文件。在程序設(shè)計中我們一般有兩種文件:程序文件和數(shù)據(jù)文件。

程序文件

它包括源程序文件(后綴為.c) 目標文件(Windows環(huán)境下后綴為obj)可執(zhí)行程序(windows環(huán)境下后綴為exe)

數(shù)據(jù)文件

文件的內(nèi)容不一定是程序,而是程序運行時讀寫的數(shù)據(jù),比如程序運行時需要從中讀取數(shù)據(jù)的文件,或者輸出內(nèi)容的文件。

其實有時候我們會把信息輸出到磁盤上,當需要的時候再從磁盤上把數(shù)據(jù)讀取到內(nèi)存中使用,這里處理的就是磁盤上文件

文件名

一個文件有一個唯一的文件標識名(文件標識名就是文件名),以便用戶識別和引用,文件有三部分:文件路徑+文件主干+文件后綴。

例:D:\practice\test.txt

文件的打開和關(guān)閉

文件指針

緩沖文件系統(tǒng)中,關(guān)鍵的概念是“文件類型指針”,簡稱為 文件指針。

每個被使用的文件都在內(nèi)存中開辟了一個相應(yīng)的文件信息區(qū),用來存放文件的相關(guān)信息(比如:文件的名字,狀態(tài),當前的位置等)。這些信息都是保存在一個結(jié)構(gòu)體變量中的,該結(jié)構(gòu)體類型是系統(tǒng)聲明的,取名為FILE

一文帶你玩轉(zhuǎn)C語言文件操作,# 系統(tǒng)解析C語言,C語言,c語言,開發(fā)語言

?在vs2013編譯環(huán)境下stdio.h的頭文件下有以下的文件類型聲明:

struct _iobuf {
 ? ? ? ?char *_ptr;
 ? ? ? ?int ? _cnt;
 ? ? ? ?char *_base;
 ? ? ? ?int ? _flag;
 ? ? ? ?int ? _file;
 ? ? ? ?int ? _charbuf;
 ? ? ? ?int ? _bufsiz;
 ? ? ? ?char *_tmpfname;
 ? ? ? };
typedef struct _iobuf FILE;

不同的編譯器FILEL類型包含的內(nèi)容不完全相同,但是大同小異。每當打開一個文件,系統(tǒng)就會根據(jù)文件的情況自動創(chuàng)建一個FILE的結(jié)構(gòu)變量,并填充其中的信息,使用者不必關(guān)心細節(jié)。

一般都是通過這個FILE指針來維護這個FILE結(jié)構(gòu)的變量。

FILE* pf;//文件指針變量

定義pf是一個指向FILE類型數(shù)據(jù)的指針變量??梢酝ㄟ^pf指向某個文件的文件信息區(qū)。通過該文件信息區(qū)中的信息就能夠訪問到該文件。就是說:通過文件指針變量可以找到與它相關(guān)的文件。

文件的打開和關(guān)閉

文件在讀寫的時候是先打開文件,在使用后關(guān)閉文件

在編寫程序的時候,打開文件的時候,都會返回一個FILE*的指針變量指向該文件,也相當于建立了指針和文件的關(guān)系。

ANSIC規(guī)定使用fopen函數(shù)來打開文件,fclose來關(guān)閉文件。

//打開文件
FILE * fopen ( const char * filename, const char * mode );
//關(guān)閉文件
int fclose ( FILE * stream );

? ? ? ? ? ?文件使用方式 :? ? ? ? ? 含義:? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?若文件不存在:

“r”(只讀)
為了輸入數(shù)據(jù),打開一個已經(jīng)存在的文本文件? ?出錯
“w”(只寫)
為了輸出數(shù)據(jù),打開一個文本文件
建立一個新的文件
“a”(追加)
向文本文件尾添加數(shù)據(jù)
建立一個新的文件
“rb”(只讀)
為了輸入數(shù)據(jù),打開一個二進制文件
出錯
wb”(只寫)
為了輸出數(shù)據(jù),打開一個二進制文件
建立一個新的文件
“ab”(追加)
向一個二進制文件尾添加數(shù)據(jù)
建立一個新的文件
“r+”(讀寫)
為了讀和寫,打開一個文本文件
出錯
“w+”(讀寫)
為了讀和寫,建議一個新的文件
建立一個新的文件
“a+”(讀寫)
打開一個文件,在文件尾進行讀寫
建立一個新的文件
“rb+”(讀寫)
為了讀和寫打開一個二進制文件
出錯
“wb+”(讀寫)
為了讀和寫,新建一個新的二進制文件
建立一個新的文件
“ab+”(讀寫)
打開一個二進制文件,在文件尾進行讀和寫
建立一個新的文件

栗子:

int main()
{
	FILE* pf;
	pf = fopen("test.txt", "r");
	if (pf == NULL)
	{
		perror("fopen");
		return 1;
	}
	//寫文件

	//關(guān)閉文件
	fclose(pf);
	return 0;
}

因為我的這個文件下沒有test.txt文件,它就報錯了

一文帶你玩轉(zhuǎn)C語言文件操作,# 系統(tǒng)解析C語言,C語言,c語言,開發(fā)語言

?文件的順序讀寫

一文帶你玩轉(zhuǎn)C語言文件操作,# 系統(tǒng)解析C語言,C語言,c語言,開發(fā)語言

?fgetc和fputc

一文帶你玩轉(zhuǎn)C語言文件操作,# 系統(tǒng)解析C語言,C語言,c語言,開發(fā)語言

int main()
{
	FILE* pf;
	pf = fopen("test.txt", "r");
	if (pf == NULL)
	{
		perror("fopen");
		return 1;
	}
	int ch = fgetc(pf);
	printf("%c ", ch);
	ch = fgetc(pf);
	printf("%c ", ch);
	ch = fgetc(pf);
	printf("%c ", ch);
	fclose(pf);
	pf = NULL;
	return 0;
}

一文帶你玩轉(zhuǎn)C語言文件操作,# 系統(tǒng)解析C語言,C語言,c語言,開發(fā)語言

一文帶你玩轉(zhuǎn)C語言文件操作,# 系統(tǒng)解析C語言,C語言,c語言,開發(fā)語言

int main()
{
	FILE* pf;
	pf = fopen("test.txt", "w");
	if (pf == NULL)
	{
		perror("fopen");
		return 1;
	}
	fputc('a', pf);
	fputc('b', pf);
	fputc('c', pf);
	
	fclose(pf);
	pf = NULL;
	return 0;
}

?一文帶你玩轉(zhuǎn)C語言文件操作,# 系統(tǒng)解析C語言,C語言,c語言,開發(fā)語言

?fgets和fputs

?一文帶你玩轉(zhuǎn)C語言文件操作,# 系統(tǒng)解析C語言,C語言,c語言,開發(fā)語言

int main()
{
	FILE* pf;
	pf = fopen("test.txt", "w");
	if (pf == NULL)
	{
		printf("open");
		return 1;
	}
	fputs("aaaaaa", pf);
	fputs("xxxxxxx", pf);
	fclose(pf);
	pf = NULL;
	return 0;
}

?一文帶你玩轉(zhuǎn)C語言文件操作,# 系統(tǒng)解析C語言,C語言,c語言,開發(fā)語言

一文帶你玩轉(zhuǎn)C語言文件操作,# 系統(tǒng)解析C語言,C語言,c語言,開發(fā)語言

注意:讀取文件在num-1結(jié)束或者遇到換行結(jié)束

int main()
{
	FILE* pf;
	pf = fopen("test.txt", "r");
	if (pf == NULL)
	{
		perror("fopen");
		return 1;
	}
	char arr[10] = { 0 };
	fgets(arr, 10, pf);
	printf("%s", arr);

	fclose(pf);
	pf = NULL;
	return 0;
}

一文帶你玩轉(zhuǎn)C語言文件操作,# 系統(tǒng)解析C語言,C語言,c語言,開發(fā)語言

fscanf,sscanf 和 fprintf,srpintf

一文帶你玩轉(zhuǎn)C語言文件操作,# 系統(tǒng)解析C語言,C語言,c語言,開發(fā)語言

struct S
{
	int a;
	double b;
};
int main()
{
	FILE* pf;
	pf = fopen("test.txt", "w");
	if (pf == NULL)
	{
		perror("fopen");
		return 1;
	}
	
	struct S s = { 1, 3.15 };
	fprintf(pf, "%d %f", s.a, s.b);
	fclose(pf);
	pf = NULL;
	return 0;
}

?一文帶你玩轉(zhuǎn)C語言文件操作,# 系統(tǒng)解析C語言,C語言,c語言,開發(fā)語言

一文帶你玩轉(zhuǎn)C語言文件操作,# 系統(tǒng)解析C語言,C語言,c語言,開發(fā)語言

struct S
{
	int a;
	double b;
};
int main()
{
	FILE* pf;
	pf = fopen("test.txt", "r");
	if (pf == NULL)
	{
		perror("fopen");
		return 1;
	}

	struct S s = { 0 };
	fscanf(pf, "%d %lf", &(s.a), &(s.b) );
	printf("%d %f", s.a, s.b);
	fclose(pf);
	pf = NULL;
	return 0;
}

一文帶你玩轉(zhuǎn)C語言文件操作,# 系統(tǒng)解析C語言,C語言,c語言,開發(fā)語言

?一文帶你玩轉(zhuǎn)C語言文件操作,# 系統(tǒng)解析C語言,C語言,c語言,開發(fā)語言

struct S
{
	int a;
	float b;
	char ch[10];
};


int main()
{
	struct S s = { 10, 19.5, "hello" };

	char arr[100] = { 0 };
	sprintf(arr, "%d %f %s", s.a, s.b, s.ch);
	printf("%s", arr);
}

一文帶你玩轉(zhuǎn)C語言文件操作,# 系統(tǒng)解析C語言,C語言,c語言,開發(fā)語言

一文帶你玩轉(zhuǎn)C語言文件操作,# 系統(tǒng)解析C語言,C語言,c語言,開發(fā)語言

int main()
{
	struct S s = { 10, 19.5, "hello" };

	char arr[100] = { 0 };
	sprintf(arr, "%d %f %s", s.a, s.b, s.ch);
	//printf("%s", arr);
	struct S tmp = { 0 };
	sscanf(arr,"%d %f %s", &(tmp.a), &(tmp.b), &(tmp.ch));
	printf("%d %f %s", tmp.a, tmp.b, tmp.ch);
}

一文帶你玩轉(zhuǎn)C語言文件操作,# 系統(tǒng)解析C語言,C語言,c語言,開發(fā)語言

?結(jié)論:

scanf:從標準輸入流中讀取格式化的數(shù)據(jù)

printf:從標準輸出流中寫格式化的數(shù)據(jù)

fscanf:適用于所有輸入流讀取格式化輸入函數(shù)

fprintf:適用于所有輸出流寫格式化輸出函數(shù)

sscanf:從字符串中讀取格式化的數(shù)據(jù)

sprintf:將格式化的數(shù)據(jù)轉(zhuǎn)化為字符串

fread和fwrite

一文帶你玩轉(zhuǎn)C語言文件操作,# 系統(tǒng)解析C語言,C語言,c語言,開發(fā)語言

#include <stdio.h>
struct S
{
	int a;
	double b;
	char arr[10];
};

int main()
{
	struct S s = { 1, 3.2, "hello" };
	FILE* pf = fopen("test.txt", "wb");
	if (pf == NULL)
	{
		perror("fopen");
		return 1;
	}
	fwrite(&s, sizeof(struct S), 1, pf);
	return 0;
}

?一文帶你玩轉(zhuǎn)C語言文件操作,# 系統(tǒng)解析C語言,C語言,c語言,開發(fā)語言

一文帶你玩轉(zhuǎn)C語言文件操作,# 系統(tǒng)解析C語言,C語言,c語言,開發(fā)語言

struct S
{
	int a;
	double b;
	char arr[10];
};

int main()
{
	struct S tmp = { 0 };
	FILE* pf = fopen("test.txt", "rb");
	if (pf == NULL)
	{
		perror("fopen");
		return 1;
	}
	fread(&tmp, sizeof(struct S), 1, pf);
	printf("%d %f %s\n", tmp.a, tmp.b, tmp.arr);
	return 0;
}

一文帶你玩轉(zhuǎn)C語言文件操作,# 系統(tǒng)解析C語言,C語言,c語言,開發(fā)語言

文件的隨機讀寫

?fseek

根據(jù)文件指針的位置和偏移量在定位指針

一文帶你玩轉(zhuǎn)C語言文件操作,# 系統(tǒng)解析C語言,C語言,c語言,開發(fā)語言

int main()
{
	FILE* pf = fopen("test.txt", "r");
	if (pf == NULL)
	{
		perror("fopen");
		return 1;
	}
	fseek(pf, 2, SEEK_SET);
	int ch = fgetc(pf);
	printf("%c\n", ch);
	return 0;
}

?一文帶你玩轉(zhuǎn)C語言文件操作,# 系統(tǒng)解析C語言,C語言,c語言,開發(fā)語言

ftell

返回文件指針相對于起始位置的偏移量?

一文帶你玩轉(zhuǎn)C語言文件操作,# 系統(tǒng)解析C語言,C語言,c語言,開發(fā)語言

int main()
{
	FILE* pf = fopen("test.txt", "r");
	if (pf == NULL)
	{
		perror("fopen");
		return 1;
	}
	fseek(pf, 2, SEEK_SET);
	int ch = fgetc(pf);
	//printf("%c\n", ch);
	int pos = ftell(pf);
	printf("%d\n", pos);
	return 0;
}

一文帶你玩轉(zhuǎn)C語言文件操作,# 系統(tǒng)解析C語言,C語言,c語言,開發(fā)語言

rewind?

讓文件指針的位置回到文件的起始位置

一文帶你玩轉(zhuǎn)C語言文件操作,# 系統(tǒng)解析C語言,C語言,c語言,開發(fā)語言

文本文件和二進制文件

根據(jù)數(shù)據(jù)的具體方式,數(shù)據(jù)文件被稱為文本文件或者二進制文件。

數(shù)據(jù)在內(nèi)存中以二進制的形式存儲,如果不加轉(zhuǎn)換的輸出到外存,就是二進制文件。
如果要求在外存上以ASCII碼的形式存儲,則需要在存儲前轉(zhuǎn)換。以ASCII字符的形式存儲的文件就是文 本文件。?
字符一律以ASCII形式存儲,數(shù)值型數(shù)據(jù)既可以用ASCII形式存儲,也可以使用二進制形式存儲。
如有整數(shù)10000,如果以ASCII碼的形式輸出到磁盤,則磁盤中占用5個字節(jié)(每個字符一個字節(jié)),而
二進制形式輸出,則在磁盤上只占4個字節(jié)

?

文件讀取結(jié)束的判定

被錯誤使用的feof

文件在讀取的過程中,不能用feo函數(shù)的返回值直接用來判斷文件是否結(jié)束。

而是作用于文件讀取結(jié)束的時候,判斷是讀取失敗結(jié)束,還是遇到文件尾結(jié)束。返回的是非零的值則是讀取到了文件末尾,否則讀取失敗而結(jié)束。

判斷是否讀取結(jié)束可以用:

1文本文件是否讀取結(jié)束,判斷返回值是 否為EOF(fgetc),或者NULL(fgets)

2. 二進制文本的讀取結(jié)束判斷,判斷返回值是否小于實際要讀的個數(shù)

栗子:

#include <stdio.h>
#include <stdlib.h>
int main(void)
{
 ? ?int c; // 注意:int,非char,要求處理EOF
 ? ?FILE* fp = fopen("test.txt", "r");
 ? ?if(!fp) {
 ? ? ? ?perror("File opening failed");
 ? ? ? ?return EXIT_FAILURE;
 ? }
 //fgetc 當讀取失敗的時候或者遇到文件結(jié)束的時候,都會返回EOF
 ? ?while ((c = fgetc(fp)) != EOF) // 標準C I/O讀取文件循環(huán)
 ? { 
 ? ? ? putchar(c);
 ? }

 //判斷是什么原因結(jié)束的
 ? ?if (ferror(fp))
 ? ? ? ?puts("I/O error when reading");
 ? ?else if (feof(fp))
 ? ? ? ?puts("End of file reached successfully");
 ? ?fclose(fp);
}

文件緩沖區(qū)

ANSIC 標準采用 緩沖文件系統(tǒng) 處理的數(shù)據(jù)文件的,所謂緩沖文件系統(tǒng)是指系統(tǒng)自動地在內(nèi)存中為程序 中每一個正在使用的文件開辟一塊“ 文件緩沖區(qū) 。從內(nèi)存向磁盤輸出數(shù)據(jù)會先送到內(nèi)存中的緩沖區(qū),裝 滿緩沖區(qū)后才一起送到磁盤上。如果從磁盤向計算機讀入數(shù)據(jù),則從磁盤文件中讀取數(shù)據(jù)輸入到內(nèi)存緩 沖區(qū)(充滿緩沖區(qū)),然后再從緩沖區(qū)逐個地將數(shù)據(jù)送到程序數(shù)據(jù)區(qū)(程序變量等)。緩沖區(qū)的大小根 據(jù)C編譯系統(tǒng)決定的。
也就是做文件的數(shù)據(jù)不是直接傳送給磁盤的,會有一塊區(qū)域讓它們等待,到達一定的量后將它們再一起傳送給磁盤。

一文帶你玩轉(zhuǎn)C語言文件操作,# 系統(tǒng)解析C語言,C語言,c語言,開發(fā)語言


?文章來源地址http://www.zghlxwxcb.cn/news/detail-580118.html

到了這里,關(guān)于一文帶你玩轉(zhuǎn)C語言文件操作的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 【C語言】帶你玩轉(zhuǎn)庫函數(shù)qsort

    【C語言】帶你玩轉(zhuǎn)庫函數(shù)qsort

    君兮_的個人主頁 勤時當勉勵 歲月不待人 C/C++ 游戲開發(fā) Hello,米娜桑們,這里是君兮_,之前更新的一直是比較基礎(chǔ)和簡單的內(nèi)容,隨著博主自己的水平的提升,今天給大家?guī)睃c不一樣的東西,我們今天要講的是庫函數(shù)qsort的用法 廢話不多說,咱們直接開始吧! 很多人可能是

    2024年02月16日
    瀏覽(32)
  • Spring Boot進階(69):輕松實現(xiàn)定時任務(wù)持久化!SpringBoot集成quartz帶你玩轉(zhuǎn)定時任務(wù)刪除、暫停、獲取等操作!【附項目源碼】

    Spring Boot進階(69):輕松實現(xiàn)定時任務(wù)持久化!SpringBoot集成quartz帶你玩轉(zhuǎn)定時任務(wù)刪除、暫停、獲取等操作!【附項目源碼】

    ????????現(xiàn)如今,隨著市場競爭加劇,各個企業(yè)都在不斷尋求提高效率、降低成本的方法,此時使用自動化工具已成為必不可少的選擇。而在眾多的自動化工具中,定時任務(wù)已經(jīng)成為一項必備工具,而Quartz就是一個非常好用的定時任務(wù)框架,它的輕量級、高可靠性、易于使

    2024年02月09日
    瀏覽(31)
  • 帶你玩轉(zhuǎn)modbusTCP通信

    帶你玩轉(zhuǎn)modbusTCP通信

    Modbus TCP是一種基于TCP/IP協(xié)議的Modbus通信協(xié)議,它是Modbus協(xié)議的一種變體,用于在以太網(wǎng)上進行通信。Modbus TCP協(xié)議是一種開放的通信協(xié)議,它支持多種編程語言和操作系統(tǒng),并且可以在不同的硬件和軟件平臺上進行通信。 Modbus TCP協(xié)議使用標準的TCP/IP協(xié)議棧,通過以太網(wǎng)進行通

    2024年02月03日
    瀏覽(22)
  • 帶你玩轉(zhuǎn)雙鏈表

    帶你玩轉(zhuǎn)雙鏈表

    相信經(jīng)過前面的學習,大家已經(jīng)了解的單鏈表的缺陷和用途,今天我們學習雙鏈表,和以前不同,今天雙鏈表的實現(xiàn)我們增加一點點的難度,但我相信這些難度對大家都沒有問題。和之前單鏈表的實現(xiàn),我們的數(shù)據(jù)類型是固定的,主函數(shù)中傳什么我們的單鏈表結(jié)構(gòu)體中就需要

    2024年02月13日
    瀏覽(24)
  • 【Apache-Flink零基礎(chǔ)入門】「入門到精通系列」手把手+零基礎(chǔ)帶你玩轉(zhuǎn)大數(shù)據(jù)流式處理引擎Flink(基礎(chǔ)概念解析+有狀態(tài)的流式處理)

    【Apache-Flink零基礎(chǔ)入門】「入門到精通系列」手把手+零基礎(chǔ)帶你玩轉(zhuǎn)大數(shù)據(jù)流式處理引擎Flink(基礎(chǔ)概念解析+有狀態(tài)的流式處理)

    Apache Flink 是業(yè)界公認的最佳流計算引擎之一,它不僅僅局限于流處理,而是一套兼具流、批、機器學習等多種計算功能的大數(shù)據(jù)引擎。Flink 的用戶只需根據(jù)業(yè)務(wù)邏輯開發(fā)一套代碼,就能夠處理全量數(shù)據(jù)、增量數(shù)據(jù)和實時數(shù)據(jù),無需針對不同的數(shù)據(jù)類型開發(fā)不同的方案。這使得

    2024年02月03日
    瀏覽(99)
  • 帶你玩轉(zhuǎn)單向鏈表(學習必備)

    帶你玩轉(zhuǎn)單向鏈表(學習必備)

    本篇文章主要介紹數(shù)據(jù)結(jié)構(gòu)中 單向鏈表 各種操作,適合有 C語言基礎(chǔ) 的同學,文中描述和代碼示例很詳細,干貨滿滿,感興趣的小伙伴快來一起學習吧! ??大家好!我是新人博主朦朧的雨夢,希望大家多多關(guān)照和支持?????? ??大家一起努力,共同成長,相信我們都會

    2024年02月02日
    瀏覽(27)
  • 【玩轉(zhuǎn)Linux操作】一文帶你明白Shell的判斷,循環(huán)語句

    【玩轉(zhuǎn)Linux操作】一文帶你明白Shell的判斷,循環(huán)語句

    ??專欄【玩轉(zhuǎn)Linux操作】 ??喜歡的詩句:更喜岷山千里雪 三軍過后盡開顏。 ??音樂分享【如愿】 大一同學小吉,歡迎并且感謝大家指出我的問題?? 注意寫空格 if … then 形式 類似于C/C++里面的 if-else 語句 ??示例 ??示例 ??示例 類似于C/C++的 switch 語句 ??示例 注意寫空

    2024年02月13日
    瀏覽(26)
  • 【Linux】32條指令帶你玩轉(zhuǎn) Linux !

    【Linux】32條指令帶你玩轉(zhuǎn) Linux !

    目錄 1,whoami 2,who 3,pwd 4,ls 1,ls? 2,ls -l 3,ls -a 4,ls -al 5,ls -d ?6,ls -ld 5,clear 6,cd 1,cd? 2,cd . 3,cd .. 4,cd /home/litao/linux/? 絕對路徑 5,cd ../day02/? ?相對路徑 6,cd ~ 7,cd - 7,tree 8,touch 9,mkdir 1,mkdir 2,mkdir -p 10,rmdir rm 1,rmdir 2,rm 3,rm -f 4,rm -r 5,rm -rf 6,

    2024年02月08日
    瀏覽(28)
  • 內(nèi)網(wǎng)穿透技術(shù) - 帶你玩轉(zhuǎn)Ngrok和NATAPP

    內(nèi)網(wǎng)穿透技術(shù) - 帶你玩轉(zhuǎn)Ngrok和NATAPP

    使用內(nèi)網(wǎng)穿透技術(shù),我們出差或者在家,就可以直接訪問到公司的電腦或者內(nèi)網(wǎng)網(wǎng)站,實現(xiàn)遠程辦公。也可以將我們自己在局域網(wǎng)內(nèi)搭建的網(wǎng)站暴露出去,讓所有人都可以直接訪問到。 本文章主要介紹下內(nèi)網(wǎng)穿透工具Ngrok和NATAPP。 Ngrok 開源,老牌穿透工具 NATAPP 免費隧道,提

    2024年02月15日
    瀏覽(21)
  • 帶你玩轉(zhuǎn) Vite + Vue3 高低版本常用玩法

    Vite 是一種新型前端構(gòu)建工具,在我們保險前端項目中已經(jīng)推動并應(yīng)用很久了,Vite 能夠顯著降低構(gòu)建時間,提升前端開發(fā)效率。 它主要由兩部分組成: 一個開發(fā)服務(wù)器,它基于 原生 ES 模塊 提供了 豐富的內(nèi)建功能,如速度快到驚人的 模塊熱更新(HMR) 一套構(gòu)建指令,它使

    2024年02月05日
    瀏覽(23)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包