freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

linux開發(fā)基礎(chǔ)相關(guān)知識簡介-wenkub

2023-03-10 14:13:46 本頁面
 

【正文】 ? gcc 是 GNU 的 C 和 C++ 編譯器。 ? gcc fPIC g c Wall fPIC g c Wall shared Wl,soname, o –lc ? 注:” fPIC ”是位置無關(guān)參數(shù), ” g”和“- Wall”參數(shù)不是必須的。 ? 優(yōu)點:多進程使用同一函數(shù)庫;修改函數(shù)庫不需重新連編。 例如 , 把 : ar rcs 然后運行 ranlib,以給庫加入一些索引信息 博創(chuàng)科技 嵌入互動 169。可分為兩種類型: ? 靜態(tài)函數(shù)庫 (static libraries):是一個普通的目標(biāo)文件的集合,一般用“ .a”作為文件的后綴。 2023 博創(chuàng)科技 末行模式 ? 字符串的替換 :s/str1/str2/ 用字符串 str2 替換行中首次出現(xiàn)的字符串 str1 :s/str1/str2/g 用字符串 str2 替換行中所有出現(xiàn)的字符串 str1 :.,$ s/str1/str2/g 用字符串 str2 替換正文當(dāng)前行到末尾所有出現(xiàn)的字符串 str1 :1,$ s/str1/str2/g 用字符串 str2 替換正文中所有出現(xiàn)的字符串 str1 :g/str1/s//str2/g 功能同上 博創(chuàng)科技 嵌入互動 169。如, rc 可以用字符“ c ”替換光標(biāo)所指向的當(dāng)前字符 R 進入替換狀態(tài),新增內(nèi)容會覆蓋原先內(nèi)容,直到按 [ESC] 回到命令模式下為止 cc 修改光標(biāo)所在行 C 修改從光標(biāo)位置到該行末尾的內(nèi)容 c 與光標(biāo)移動命令的組合 博創(chuàng)科技 嵌入互動 169。 2023 博創(chuàng)科技 命令模式 ? 光標(biāo)的移動 h 左移一個字符 l 右移一個字符 j 下移一行 k 上移一行 w,W 跳至后一個字的開頭 (W忽略標(biāo)點 ) b,B 跳至前一個字的開頭( B忽略標(biāo)點) e 移動到后一個字的末尾 ^ 至本行第一個非空字符 $ 至行尾 0 至行首 H 移動到當(dāng)前窗口的第一列 M 移動到當(dāng)前窗口的中間列 L 移動到視窗的最后一列 ) 光標(biāo)所在位置到下個句子的第一個字母 ( 光標(biāo)所在位置到該句子的第一個字母 } 光標(biāo)所在位置到該段落的最后一個字母 { 光標(biāo)所在位置到該段落的第一個字母 博創(chuàng)科技 嵌入互動 169。 ? 插入 (insert) i 從光標(biāo)所在位置前面開始插入內(nèi)容 I 從光標(biāo)所在行的第一個非空白字符前面開始插入資料。 2023 博創(chuàng)科技 vi的模式 ? Command Mode (命令模式 ) ? 這 是 執(zhí)行 vi后的缺省 模式 ? 此時鍵盤輸入當(dāng)作 命令 ? 命令有大小 寫 之 區(qū) 分 ? Input Mode (插入模式 ) ? 使用 a、 i、 o、 c、 r、 s 進入插入模式 ? 用戶輸入的任何字符都被 vi當(dāng)做文件內(nèi)容保存起來,并將其顯示在屏幕上 ? 按下 ESC 鍵 即可回到 Command Mode 博創(chuàng)科技 嵌入互動 169。 ? 通常情況,注釋說明代碼的功能,而不是其實現(xiàn)原理。應(yīng)該命名為 tmp,這樣容易書寫,也不難理解。 2023 博創(chuàng)科技 Linux 內(nèi)核編程風(fēng)格 ? Linux內(nèi)核縮進風(fēng)格是 8個字符。 ? 請在名字中使用下劃線以分割單詞,盡量使用小寫;把大寫字母留給宏和枚舉常量,以及根據(jù)統(tǒng)一慣例使用的前綴。 2023 博創(chuàng)科技 GNU風(fēng)格 (2/2) ? 當(dāng)一個 if中嵌套了另一個 ifelse時,應(yīng)用花括號把 ifelse括起來。如果用了非常見的、非標(biāo)準(zhǔn)的東西,或者可能導(dǎo)致函數(shù)不能工作的任何可能的值,應(yīng)該進行特殊說明。 2023 博創(chuàng)科技 GNU風(fēng)格 (1/2) ? 函數(shù)返回類型說明和函數(shù)名分兩行放置,函數(shù)起始字符和函數(shù)開頭左花括號放到最左邊。用這些語言編制的程序盡管是應(yīng)用程序文件,但可以直接運行。 2023 博創(chuàng)科技 ? Linux程序需要首先轉(zhuǎn)化為低級機器語言即所謂的二進制代碼以后,才能被操作系統(tǒng)執(zhí)行。 ? 大多數(shù) Linux軟件是經(jīng)過自由軟件基金會( Free Software Foundation)提供的 GNU( GNU 即 GNU’ s not UNIX)公開認(rèn)證授權(quán)的,因而通常被稱作 GNU軟件。只要能夠訪問 Web站點,就可以啟動一個以 Linux為基礎(chǔ)的軟件項目。 2023 博創(chuàng)科技 北 京 博 創(chuàng) 興 業(yè) 科 技 有 限 公 司 BEIJNG UNIVERSAL PIONEERING TECHNOLOGY Co . , LTD 博創(chuàng)科技 嵌入互動 Linux開發(fā)基礎(chǔ) 原倉周 博創(chuàng)科技 嵌入互動 169。 2023 博創(chuàng)科技 第二章 Linux程序設(shè)計基礎(chǔ) —C環(huán)境 ? Linux編程概述 ? 文本編輯器 vi ? Linux下函數(shù)庫 ? GCC及其使用 ? 調(diào)試工具 gdb ? GNU make和 makefile 博創(chuàng)科技 嵌入互動 169。 ? Linux開發(fā)工作經(jīng)常是在 Linux用戶決定共同完成一個項目時開始的。 GNU軟件免費提供給用戶使用,并被證明是非??煽亢透咝У?。 ? 例如編程時,先用普通的編程語言生成一系列指令,這些指令可被翻譯為適當(dāng)?shù)目蓤?zhí)行應(yīng)用程序的二進制代碼。編譯器則不同,它將生成一個獨立的二進制代碼文件然后才可以運行。 ? 盡量不要讓兩個不同優(yōu)先級的操作符出現(xiàn)在相同的對齊方式中,應(yīng)該附加額外的括號使得代碼縮進可以表示出嵌套。如果存在重要的返回值,也需要說明。 ? 要在同一個聲明中同時說明結(jié)構(gòu)標(biāo)識和變量或者結(jié)構(gòu)標(biāo)識和類型定義(typedef)。例如,應(yīng)該使用類似ignore_space_change_flag的名字;不要使用類似 iCantReadThis的名字。 ? Linux內(nèi)核風(fēng)格采用 KR標(biāo)準(zhǔn),將開始的大括號放在一行的最后,而將結(jié)束的大括號放在一行的第一位。 ? 命名全局變量,應(yīng)該用描述性命名方式,例如應(yīng)該命名“ count_active_users()”,而不是“ tusr()”。避免把注釋插到函數(shù)體內(nèi),而寫到函數(shù)前面,說明其功能,如果這個函數(shù)的確很復(fù)雜,其中需要有部分注釋,可以寫些簡短的注釋來說明那些重要的部分,但是不能過多。 2023 博創(chuàng)科技 vi的模式 ? Last Mode (末行 模式 ) ? 在 Command Line 按下 : 即可 進入該模式 ? 用 來進行保存文件 、 打開文檔 或 環(huán)境 的 設(shè) 定 ? 命令有大小 寫 之分 博創(chuàng)科技 嵌入互動 169。 ? 開始 (open) o 在光標(biāo)所在行下新增一行并進入輸入模式。 2023 博創(chuàng)科技 命令模式 ? 光標(biāo)的移動 (續(xù)) nH 將光標(biāo)移到屏幕的第 n 行 nL 將光標(biāo)移到屏幕的倒數(shù)第 n 行 CTRLd 向下半頁 CTRLf 向下一頁 CTRLu 向上半頁 CTRLb 向上一頁 n 減號移動到上一行的第一個非空白字符,前面加上數(shù)字可以指定移動到以 上 n 行 n+ 加號移動到下一行的第一個非空白字符,前面加上數(shù)字可以指定移動到以下 n 行 博創(chuàng)科技 嵌入互動 169。 2023 博創(chuàng)科技 命令模式 ? 復(fù)制和移動 yy 復(fù)制當(dāng)前行到內(nèi)存緩沖區(qū) nyy 復(fù)制 n 行內(nèi)容到內(nèi)存緩沖區(qū) y與光標(biāo)移動的組合 p 將緩沖區(qū)的內(nèi)容粘貼到光標(biāo)的后面 P 將緩沖區(qū)的內(nèi)容粘貼到光標(biāo)的前面 另:在末行模式下實現(xiàn)移動 :n1,n2 m n3 : 把 n1到 n2 行 內(nèi)容 搬到第 n3 行 后 博創(chuàng)科技 嵌入互動 169。 2023 博創(chuàng)科技 末行模式 ? 其他: : n 將光標(biāo)移到第 n 行 編輯多個文件 vi file1 file2 … :n 編輯下一個文件 :e filename 編輯指定文件 博創(chuàng)科技 嵌入互動 169。靜態(tài)函數(shù)庫和共享函數(shù)庫相比有很多的缺點,占用內(nèi)存空間多。 2023 博創(chuàng)科技 Linux下函數(shù)庫( 2/3) ? 共享函數(shù)庫 (shared libraries):當(dāng)一個可執(zhí)行程序在啟動的時候被加載的函數(shù)。 ? 安裝一個新版本的函數(shù)庫的時候,要先將這些函數(shù)庫文件拷貝到一些特定的目錄中,運行 ldconfig就可以。 博創(chuàng)科技 嵌入互動 169。實際上, gcc 能夠編譯 多種 語言: C、C++ 和 Object C等。編譯過程一般可以分為下面四個階段,每個階段分別調(diào)用不同的工具進行處理 預(yù)處理 鏈接 編譯 組譯 源程序(*.c) 可執(zhí)行文件 預(yù)處理器 編譯器 組譯器 連接器 博創(chuàng)科技 嵌入互動 169。 ? 當(dāng)所有的目標(biāo)文件都生成之后, gcc就調(diào)用 ld來完成最后的關(guān)鍵性工作,這個階段就是連接。 ? 第一種格式是 ,這種格式用于早期的 Linux系統(tǒng)以及 Unix系統(tǒng)的原始格式。 ? 因此,一種新的文件格式被引入 Unix系統(tǒng) 5的第四版本和 Solaris系統(tǒng)中。 ? gcc編譯程序產(chǎn)生的所有的二進制文件都是 ELF格式的文件(即使可執(zhí)行文件的默認(rèn)名仍然是 )。很多的 gcc選項包括一個以上的字符。 2023 博創(chuàng)科技 gcc選項 ? o選項 你能用 o 編譯選項來為將產(chǎn)生的可執(zhí)行文件指定一個文件名來代替 。 例: gcc –c ? E 只運行 C 預(yù)編譯器。 ? static 禁止使用共享連接。 2023 博創(chuàng)科技 查找選項 ? gcc一般使用默認(rèn)路徑查找頭文件和庫文件。 2023 博創(chuàng)科技 優(yōu)化選項 ? 優(yōu)化選項可以使 GCC在耗費更多編譯時間和犧牲易調(diào)試性的基礎(chǔ)上產(chǎn)生更小更快的可執(zhí)行文件。這些優(yōu)化在大多數(shù)情況下都會使程序執(zhí)行的更快。 ? O3選項:比 O2 更進一步優(yōu)化,包括 inline 函數(shù)。 gcc v 博創(chuàng)科技 嵌入互動 169。 博創(chuàng)科技 嵌入互動 169。 ? 使用 gdb調(diào)試工具,命令行如下: 例: gcc –ggdb3 –o test3 博創(chuàng)科技 嵌入互動 169。 ? gdb 所提供的一些功能如下所示: ? 運行程序,設(shè)置所有的能影響程序運行的參數(shù)和環(huán)境; ? 控制程序在指定的條件下停止運行; ? 當(dāng)程序停止時,可以檢查程序的狀態(tài); ? 修改程序的錯誤,并重新運行程序; ? 動態(tài)監(jiān)視程序中變量的值; ? 可以單步逐行執(zhí)行代碼,觀察程序的運行狀態(tài)。 ? gdb程序調(diào)試的對象是可執(zhí)行文件,而不是程序的源代碼文件。 ? gdb 利用這些信息使源代碼和機器碼相關(guān)聯(lián)??稍? makefile 中如下定義 CFLAGS 變量: CFLAGS = g 運行 博創(chuàng)科技 嵌入互動 169。從返回的信息可知, break是用于設(shè)置斷點的命令。 ? 后跟命令的分類名,可獲得該類命令的詳細(xì)清單 博創(chuàng)科技 嵌入互動 169。 ? run命令:執(zhí)行當(dāng)前被調(diào)試的程序。 ? watch命令:設(shè)置監(jiān)視點,監(jiān)視表達(dá)式的變化。 ? rwatch命令:設(shè)置讀監(jiān)視點,當(dāng)監(jiān)視表達(dá)式被讀時將程序掛起,等侍調(diào)試。執(zhí)行這個命令的前提是已經(jīng) run,開始了代碼的執(zhí)行。執(zhí)行這個命令的前提是已經(jīng)用run開始執(zhí)行代碼。 ? 18) info local命令:顯示當(dāng)前函數(shù)的所有局部變量的信息。指定一個斷點號碼,則刪除指定斷點。 ? 24) Quit命令:退出 gdb。 int main () { printf (Please input a string: )。該程序使用了 一個未經(jīng)過初始化的字符串
點擊復(fù)制文檔內(nèi)容
職業(yè)教育相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1