20145206 《信息安全系统设计基础》第十二周学习总结
20145206 《信息安全系統(tǒng)設(shè)計(jì)基礎(chǔ)》第十二周學(xué)習(xí)總結(jié)
本周學(xué)習(xí)目標(biāo)
1、第九周代碼檢查
2、第十周代碼檢查
3、第十一周代碼檢查
博客鏈接
20145206 《信息安全系統(tǒng)設(shè)計(jì)基礎(chǔ)》第九周學(xué)習(xí)總結(jié)
20145206 《信息安全系統(tǒng)設(shè)計(jì)基礎(chǔ)》第十周學(xué)習(xí)總結(jié)
20145206 《信息安全系統(tǒng)設(shè)計(jì)基礎(chǔ)》第十一周學(xué)習(xí)總結(jié)
視頻學(xué)習(xí)內(nèi)容總結(jié)
指針與聲明
C語言中變量的聲明包括兩個部分:
類型 聲明符對于簡單類型,聲明并不會對代碼產(chǎn)生多大的閱讀障礙,而對于復(fù)雜類型的識別,可以采用右左右左法進(jìn)行判斷。
指針數(shù)組與數(shù)組指針
1、指針數(shù)組:即用于存儲指針的數(shù)組,也就是數(shù)組元素都是指針
舉例說明:
int *a[10]
表示:數(shù)組a中的元素都為int型指針
元素表示:a[i] (a[i])也是一樣的,因?yàn)閇]優(yōu)先級高于*
2、數(shù)組指針:即指向數(shù)組的指針,指針指向一個類型和元素個數(shù)都固定的數(shù)組
舉例說明:
int (*a)[10]
表示:指向數(shù)組a的指針
元素表示:(*a)[i]
3、指針函數(shù):即返回值是指針類型的函數(shù)
舉例說明:
int *comp()
4、函數(shù)指針:即指向函數(shù)的指針,函數(shù)名就是函數(shù)指針
舉例說明:
int (*comp1)()
右左右左法
具體方法:
從變量名開始,先右再左地,交替地一個一個向外看,在紙上寫下:“變量是” 若向右遇到左圓括號,在紙上寫下:“函數(shù),參數(shù)是”,并用同樣的方法處理括號中每一個參數(shù)——在紙上寫下:“返回” 若向右遇到方括號,在紙上寫下:“數(shù)組,長度為{方括號的內(nèi)容},元素類型為” 若向右遇到右圓括號,什么也不做 若向左遇到*,在紙上寫下:“指針,指向” 若向左遇到任何類型,在紙上寫下對應(yīng)的類型名舉例說明:分析void *(*(*fp1)(int))[10]
從fp1開始——fp1是 向右,遇到右括號,什么也不做 向左,遇到*——指針,指向 向右,遇到左圓括號——函數(shù),參數(shù)是int,返回 向左,遇到*——指針,指向 向右,遇到左方括號——數(shù)組,長度為10,元素類型為 向左,遇到*——指針,指向 向右,已經(jīng)到聲明結(jié)尾,什么也不做 向左,遇到void——void結(jié)果是:fp1是 指針,指向 函數(shù),參數(shù)是int,返回指針,指向數(shù)組,長度為10,元素類型為 指針,指向 void
信號處理
信號是Linux系統(tǒng)響應(yīng)某些條件而產(chǎn)生的一個事件,接收到該信號的進(jìn)程會執(zhí)行相應(yīng)的操作。
信號的產(chǎn)生
由用戶產(chǎn)生,如:Ctrl+C產(chǎn)生SIGINT信號等,可以通過stty -a查看哪些按鍵可以產(chǎn)生信號
由硬件產(chǎn)生,如:當(dāng)前進(jìn)程執(zhí)行了除以0的指令
由進(jìn)程發(fā)送,如:可在shell進(jìn)程下,使用命令kill -信號標(biāo)號 PID,向指定進(jìn)程發(fā)送信號。
由內(nèi)核產(chǎn)生,如:鬧鐘超時產(chǎn)生SIGALRM信號。
信號的處理
信號是由操作系統(tǒng)來處理的,說明信號的處理在內(nèi)核態(tài)。信號不一定會立即被處理,此時會儲存在信號的信號表中。
處理過程示意圖:
信號的三種處理方式:
忽略 默認(rèn)處理方式:操作系統(tǒng)設(shè)定的默認(rèn)處理方式 自定義信號處理方式:可自定義信號處理函數(shù)查看信號信息
1、命令kill -l
每個信號都有一個編號和一個宏定義名稱,宏定義可以在signal.h中找到
2、命令man 7 signal
查看信號的產(chǎn)生條件、默認(rèn)處理動作
代碼托管
http://git.oschina.net/ZouJR/Linux
代碼行數(shù)統(tǒng)計(jì):
本周托管的代碼為這幾次實(shí)驗(yàn)的代碼。
總結(jié)
本周主要是復(fù)習(xí)前幾周的代碼,還進(jìn)行了視頻的學(xué)習(xí),五次實(shí)驗(yàn)已經(jīng)結(jié)束,對五次實(shí)驗(yàn)進(jìn)行了總結(jié)復(fù)習(xí),雖然本周沒有課本上新的知識要學(xué)習(xí),但是工作量也并不小,本周完成了三篇博客,除了本篇,還有第三周博客問題總結(jié)、第五周博客實(shí)踐分析
學(xué)習(xí)進(jìn)度條
| 目標(biāo) | 5000行 | 30篇 | 400小時 | |
| 第一周 | 0/0 | 1/2 | 20/30 | 學(xué)習(xí)了一些Linux核心命令 |
| 第二周 | 250/250 | 1/3 | 20/50 | 學(xué)習(xí)了vim編輯器基礎(chǔ) |
| 第三周 | 280/530 | 1/4 | 18/68 | 熟練在vim里編程并運(yùn)行 |
| 第五周 | 300/830 | 1/5 | 15/83 | 學(xué)會生成匯編文件并查看 |
| 第六周 | 200/1030 | 1/6 | 12/95 | 了解Y86指令 |
| 第七周 | 139/1169 | 1/7 | 10/105 | 了解存儲器層次結(jié)構(gòu) |
| 第八周 | 0/1169 | 2/9 | 8/113 | 復(fù)習(xí)前面所學(xué)內(nèi)容 |
| 第九周 | 182/1351 | 2/11 | 9/122 | 了解Unix I/O |
| 第十周 | 502/1853 | 2/13 | 8/130 | 對代碼進(jìn)行理解 |
| 第十一周 | 1109/2962 | 3/16 | 10/140 | 對代碼進(jìn)行理解,學(xué)習(xí)第八章 |
| 第十二周 | 258/2962 | 3/19 | 7/147 | 對代碼進(jìn)行理解 |
轉(zhuǎn)載于:https://www.cnblogs.com/ZouJR/p/6129141.html
總結(jié)
以上是生活随笔為你收集整理的20145206 《信息安全系统设计基础》第十二周学习总结的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 开发机多用户 xdebug 远程调试 P
- 下一篇: java信息管理系统总结_java实现科