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

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

如何給自己網(wǎng)站做反鏈seo的中文意思是什么

如何給自己網(wǎng)站做反鏈,seo的中文意思是什么,無錫網(wǎng)站建設(shè)的公司,做網(wǎng)站很賺錢嗎目錄 導(dǎo)讀 1. make/Makefile 1.1 引入 1.2 概念 1.3 語(yǔ)法規(guī)則 1.4 示例 2. Linux調(diào)試器-gdb 2.1 引入 2.2 概念 2.3 使用 導(dǎo)讀 我們?cè)谏洗沃v了Linux編輯器gcc\g的使用,今天我們就來進(jìn)一步的學(xué)習(xí)如何調(diào)試,以及makefile這個(gè)強(qiáng)大的工具。 1. mak…

目錄

導(dǎo)讀

1. make/Makefile

1.1?引入

1.2 概念

1.3 語(yǔ)法規(guī)則

1.4?示例

2.?Linux調(diào)試器-gdb

2.1 引入

2.2 概念

2.3 使用


導(dǎo)讀

我們?cè)谏洗沃v了Linux編輯器gcc\g++的使用,今天我們就來進(jìn)一步的學(xué)習(xí)如何調(diào)試,以及makefile這個(gè)強(qiáng)大的工具。

1. make/Makefile

1.1?引入

會(huì)不會(huì)寫makefile,從一個(gè)側(cè)面說明了一個(gè)人是否具備完成大型工程的能力。

一個(gè)工程中的源文件不計(jì)數(shù),其按類型、功能、模塊分別放在若干個(gè)目錄中,makefile定義了一系列的 規(guī)則來指定,哪些文件需要先編譯,哪些文件需要后編譯,哪些文件需要重新編譯,甚至于進(jìn)行更復(fù)雜 的功能操作

1.2 概念

在Linux中,make是一個(gè)常用的構(gòu)建工具,用于自動(dòng)化構(gòu)建和管理程序的編譯過程。

make工具通過讀取一個(gè)叫做Makefile的文件來執(zhí)行編譯和鏈接等操作。

Makefile中包含了一系列的規(guī)則和指令,用于描述如何將源代碼轉(zhuǎn)換為可執(zhí)行程序。

  • makefile帶來的好處就是——“自動(dòng)化編譯”,一旦寫好,只需要一個(gè)make命令,整個(gè)工程完全自動(dòng)編譯,極大的提高了軟件開發(fā)的效率。
  • make是一個(gè)命令工具,是一個(gè)解釋makefile中指令的命令工具,一般來說,大多數(shù)的IDE都有這個(gè)命令,比如:Delphi的make,Visual C++的nmake,Linux下GNU的make??梢?#xff0c;makefile都成為了一 種在工程方面的編譯方法。
  • make是一條命令,makefile是一個(gè)文件,兩個(gè)搭配使用,完成項(xiàng)目自動(dòng)化構(gòu)建。

1.3 語(yǔ)法規(guī)則

Makefile語(yǔ)法規(guī)則包括目標(biāo)、依賴關(guān)系和命令。

1. 目標(biāo)(Target):指定要構(gòu)建的文件或操作的名稱。目標(biāo)是make工具的主要執(zhí)行對(duì)象。

target: dependenciescommand

2. 依賴(Dependencies):規(guī)定目標(biāo)所依賴的文件或操作。依賴關(guān)系用于確定何時(shí)需要重新構(gòu)建目標(biāo)??梢杂卸鄠€(gè)依賴項(xiàng),用空格分隔。

target: dependency1 dependency2command

3. 命令(Commands):描述了如何生成目標(biāo)的命令。命令必須以制表符開始,并且在同一行上??梢杂卸鄠€(gè)命令,每個(gè)命令占一行。

target: dependenciescommand1command2

4.??變量(Variables):可以在Makefile中定義變量,用于存儲(chǔ)常用的參數(shù)和選項(xiàng)。變量可以通過$(variable_name)來引用。

variable_name = value

?5. 注釋(Comments):使用#符號(hào)來添加注釋。注釋可以出現(xiàn)在任意位置,并且會(huì)被忽略。

# This is a comment

6. 偽目標(biāo)(Phony Targets):有些目標(biāo)不是實(shí)際的文件,而是用于執(zhí)行特定操作的偽目標(biāo)??梢允褂?code>.PHONY聲明偽目標(biāo)。

.PHONY: target

7.?默認(rèn)目標(biāo)(Default Target):Makefile可以指定一個(gè)默認(rèn)的目標(biāo),當(dāng)沒有明確指定目標(biāo)時(shí),會(huì)執(zhí)行默認(rèn)目標(biāo)。使用.DEFAULT_GOAL指定默認(rèn)目標(biāo)。

.DEFAULT_GOAL := target

1.4?示例

編寫一個(gè)簡(jiǎn)單程序:

[zhy@centos7 ~]$ vim test.c
[zhy@centos7 ~]$ cat test.c
#include <stdio.h>int main()
{printf("hello world\n");return 0;
}

編寫makefile文件:

其中 test?是的目標(biāo)文件,也是我們的最終生成的可執(zhí)行文件。

依賴文件就是 test.c源文件,然后使用我們的gcc命令,重建目標(biāo)文件。

[zhy@centos7 ~]$ vim makefile
[zhy@centos7 ~]$ cat makefile
test: test.cgcc -o test test.c

執(zhí)行make命令:

執(zhí)行make命令后,makefile文件里的 gcc -o test test.c 命令被執(zhí)行,生成一個(gè)test可執(zhí)行文件。

[zhy@centos7 ~]$ ls
111  a.out  install.sh  makefile  test.c
[zhy@centos7 ~]$ make
gcc -o test test.c
[zhy@centos7 ~]$ ls
111  a.out  install.sh  makefile  test  test.c
[zhy@centos7 ~]$ ./test
hello world

繼續(xù)編輯makefile文件:

  • clean是一個(gè)偽目標(biāo),用于清理生成的目標(biāo)文件和可執(zhí)行文件。它的命令是刪除test文件。
  • 使用.PHONY聲明了clean是一個(gè)偽目標(biāo),防止與同名文件沖突。
[zhy@centos7 ~]$ vim makefile
[zhy@centos7 ~]$ cat makefile
test: test.cgcc -o test test.c# 定義偽目標(biāo)和命令
clean:rm -f test.PHONY: clean

?

再次執(zhí)行make命令:

?要清理生成的文件,可以執(zhí)行make clean命令。

[zhy@centos7 ~]$ ls
111  a.out  install.sh  makefile  test  test.c
[zhy@centos7 ~]$ make clean
rm -f test
[zhy@centos7 ~]$ ls
111  a.out  install.sh  makefile  test.c

定義變量:

使用CC定義了編譯器和編譯選項(xiàng)的變量。

[zhy@centos7 ~]$ vim makefile
[zhy@centos7 ~]$ cat makefile
# 定義變量
CC = gcc
CFLAGS = -Wall -gtest: test.c$(CC) -o test test.c# 定義偽目標(biāo)和命令
clean:rm -f test.PHONY: clean

2.?Linux調(diào)試器-gdb

2.1 引入

我們?cè)趯懢帉慍語(yǔ)言代碼時(shí)難免會(huì)遇到一些解決不了的bug,這時(shí)我們會(huì)選擇去進(jìn)行調(diào)試,看看到底是哪一部分出現(xiàn)了錯(cuò)誤,從而進(jìn)一步的解決問題。

相對(duì)的,我們?cè)贚inux中編寫程序時(shí)也可以進(jìn)行調(diào)試。

2.2 概念

GDB是一種強(qiáng)大的命令行調(diào)試器,可用于調(diào)試C、C++和其他編程語(yǔ)言的程序。

DB具有許多功能,包括設(shè)置斷點(diǎn)、單步執(zhí)行、查看變量值、查看內(nèi)存內(nèi)容、追蹤函數(shù)調(diào)用等。它還支持多線程和多進(jìn)程調(diào)試,可以與各種編譯器和調(diào)試器一起使用。

程序的發(fā)布方式有兩種,debug模式和release模式

Linux gcc/g++出來的二進(jìn)制程序,默認(rèn)是release模式

要使用gdb調(diào)試,必須在源代碼生成二進(jìn)制程序的時(shí)候, 加上 -g 選項(xiàng)

2.3 使用

基本命令:

list/l 行號(hào):顯示binFile源代碼,接著上次的位置往下列,每次列10行。

list/l 函數(shù)名:列出某個(gè)函數(shù)的源代碼。

continue(或c):從當(dāng)前位置開始連續(xù)而非單步執(zhí)行程序。

run(或r):從開始連續(xù)而非單步執(zhí)行程序。

n 或 next:單條執(zhí)行。

s或step:進(jìn)入函數(shù)調(diào)用。

break(b)?行號(hào):在某一行設(shè)置斷點(diǎn)。

break?函數(shù)名:在某個(gè)函數(shù)開頭設(shè)置斷點(diǎn)。

info break :查看斷點(diǎn)信息。

finish:執(zhí)行到當(dāng)前函數(shù)返回,然后挺下來等待命令。

print(p):打印表達(dá)式的值,通過表達(dá)式可以修改變量的值或者調(diào)用函數(shù)。

p 變量:打印變量值。

set?var:修改變量的值。

delete?breakpoints:刪除所有斷點(diǎn)。

delete?breakpoints?n:刪除序號(hào)為n的斷點(diǎn)。

disable?breakpoints:禁用斷點(diǎn)。

enable?breakpoints:啟用斷點(diǎn)。

info(或i)?breakpoints:參看當(dāng)前設(shè)置了哪些斷點(diǎn)。

display?變量名:跟蹤查看一個(gè)變量,每次停下來都顯示它的值。

undisplay:取消對(duì)先前設(shè)置的那些變量的跟蹤。

until X行號(hào):跳至X行。

breaktrace(或bt):查看各級(jí)函數(shù)調(diào)用及參數(shù)。

info(i)?locals:查看當(dāng)前棧幀局部變量的值。

quit:退出gdb。

示例:

編寫一段代碼:

[zhy@centos7 ~]$ vim project.c
[zhy@centos7 ~]$ cat project.c
#include <stdio.h>int main() {int num1 = 5;int num2 = 0;int result;result = num1 / num2;printf("The result is: %d\n", result);return 0;
}

將程序編譯為可調(diào)試的可執(zhí)行文件:

gcc -g project.c -o project

啟動(dòng)gdb調(diào)試器:

這將啟動(dòng)gdb,并顯示(gdb)提示符。

 gdb project

顯示源代碼:

list

設(shè)置斷點(diǎn):

這將在main函數(shù)的開頭設(shè)置一個(gè)斷點(diǎn)。

break main

?

?運(yùn)行程序:

程序?qū)㈤_始執(zhí)行,并在達(dá)到斷點(diǎn)處停止。

run

?

?單步執(zhí)行:

這將單步執(zhí)行程序,進(jìn)入main函數(shù)。

step

?

?檢查變量的值:

print num1

?

?繼續(xù)執(zhí)行程序:

continue

?

檢查錯(cuò)誤:

continue命令之后會(huì)繼續(xù)執(zhí)行,程序會(huì)在除以0的地方崩潰。在運(yùn)行到該語(yǔ)句時(shí),gdb會(huì)停止并顯示相關(guān)信息。

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

相關(guān)文章:

  • 附近裝修公司電話號(hào)碼seo排名首頁(yè)
  • 高端裝修公司名稱seo推廣優(yōu)化培訓(xùn)
  • 代購(gòu)網(wǎng)站系統(tǒng)杭州制作公司網(wǎng)站
  • 佛山做外貿(mào)網(wǎng)站方案百度站長(zhǎng)工具網(wǎng)站提交
  • 淘寶上做網(wǎng)站排名靠譜嗎網(wǎng)站的優(yōu)化策略方案
  • 深圳的網(wǎng)站建設(shè)公司電話網(wǎng)站推廣怎樣做
  • 淘寶網(wǎng)站如何做虛擬機(jī)網(wǎng)絡(luò)軟文是什么意思
  • 校園網(wǎng)站建設(shè)的優(yōu)點(diǎn)東莞網(wǎng)站排名提升
  • 天津平臺(tái)網(wǎng)站建設(shè)哪里好山西網(wǎng)絡(luò)營(yíng)銷seo
  • 邢臺(tái)疫情最新進(jìn)展網(wǎng)站關(guān)鍵詞優(yōu)化報(bào)價(jià)
  • 響應(yīng)式網(wǎng)站制作視頻網(wǎng)站排名查詢工具有哪些
  • 容桂網(wǎng)站制作效率好搜索指數(shù)查詢
  • 做網(wǎng)站內(nèi)容管理器要嗎百度下載并安裝到桌面
  • 宿城區(qū)住房和城鄉(xiāng)建設(shè)局網(wǎng)站競(jìng)價(jià)推廣什么意思
  • 沈陽(yáng)公司網(wǎng)站制作廣告軟文范例大全100
  • 鹽城做企業(yè)網(wǎng)站的價(jià)格營(yíng)銷策略怎么寫模板
  • 匿名網(wǎng)站建設(shè)搜索引擎推廣的方法有
  • 外貿(mào)網(wǎng)站建設(shè) 公司價(jià)格2345網(wǎng)址導(dǎo)航瀏覽器
  • wordpress購(gòu)物網(wǎng)站北京seo百科
  • 電子商務(wù)網(wǎng)站建設(shè)的市場(chǎng)分析港港網(wǎng)app下載最新版
  • 集趣網(wǎng)站怎么做兼職百度seo收錄
  • wordpress為什么自動(dòng)跳轉(zhuǎn)seo權(quán)重查詢
  • 東平企業(yè)建站公司免費(fèi)開通網(wǎng)站
  • wordpress企業(yè)站教程武漢做seo公司
  • 重慶低價(jià)網(wǎng)站建設(shè)小紅書關(guān)鍵詞排名
  • zhaosf做這樣網(wǎng)站百度指數(shù)查詢
  • 公眾號(hào)小程序商城seo上首頁(yè)
  • 建站寶盒源代碼搜狗站長(zhǎng)平臺(tái)主動(dòng)提交
  • 寧波網(wǎng)站建設(shè)有限公司網(wǎng)站優(yōu)化seo怎么做
  • 學(xué)生作業(yè)制作網(wǎng)站專業(yè)制作網(wǎng)頁(yè)的公司