stastic特性應用
1,全局靜態變量
- 內存中的位置:靜態存儲區
- 初始化:未經初始化的全局變量會被程序自動賦值為0
- 作用域:全局靜態變量再聲明他的文件之外是不可見的,從定義之處開始到文件結尾
課本上的代碼編譯無法通過,不知問題出在什么地方
靜態變量的好處:
1)不會被其他文件所訪問
2)其他文件中可以使用相同的名字的變量,不會發生沖突
局部變量可以和全局變量同名:在函數內訪問同名的變量時,會優先訪問局部變量;局部變量的作用域在那個循環體內的堆棧中,而全局變量存在于靜態區中,動態申請數據存在于堆中。
2,局部靜態變量
- 和全局靜態變量不同的地方是作用域為局部作用域,作用于定義它語句開始到語句塊結束;
- 用static修飾局部變量時,變量從原來的棧區變為了靜態區,離開作用域后后也不會銷毀,只是駐留在靜態區中無法被訪問。
課堂筆記
一,1,Ubuntu下的軟件安裝
Ubuntu軟件下載:packagename for Linux
- 圖形化界面,Ubuntu軟件安裝中心
- 命令行安裝:
apt-get
update
:保證用戶的軟件包是最新的(安裝前建議更新)
upgrade packagename
:更新已安裝的軟件包
install packagename
:安裝軟件
remmove packagename
:卸載軟件包 -
dpkg
用來安裝下的packagename.deb軟件
sudo dekg -i packagename.deb
- 安裝軟件可能碰到的問題解決
安裝之前更新源:
sudo apt-get update
安裝軟件:
sudo apt-get install packagename
或者
sudo dgpk -i packagename.deb
(必須提前下載此軟件包且路徑正確)
情況一:
若軟件不能正常安裝,執行下列語句,重新設置安裝環境
sudo apt-get -f install
然后再次執行安裝命令
情況二:
無法獲得鎖,資源被占用
執行:ps -aux
找到所有含apt-get
的進程,使用kill命令殺死
kill -9 PID
PID
:進程號
然后再次執行安裝命令 -
pstree
:進程樹
2,打包壓縮命令
tar -czvf filename.tar.gz
tar -xzvf 待解壓縮文件
3,用戶管理
useradd
增加用戶,使用時配合-m選項,創建宿主目錄
passwd
修改密碼
userdel
刪除用戶,配合-r選項,將用戶宿主目錄刪除
二,vi編輯器的使用
1,基本介紹:基于命令操作的編輯器
2,vi的安裝:sudo apt-get install vim
3,vim的配置文件
三種模式:
- 命令模式:此模式下,所輸入的命令,不會顯,即在屏幕上,看不到用戶所輸入的命令(vi打開了默認就為命令模式),再輸入模式下,回到命令模式下,按
esc
- 輸入模式:
此模式下,可以進入文件的編輯。
進入輸入模式:在命令模式下輸入:i
,o
,O
,a
退出輸入模式:esc
----->命令模式 - 末行模式:
在命令模式下,輸入:
進入末行模式
4,輸入模式
i
:在當前光標之前插入正文
a
:在當前光標之后插入正文
o
:在當前光標所在下一行插入正文
O
:在當前光標所在上一行插入正文
s
:替換光標之前的字符
5,命令模式
文本的快捷操作 - 行復制:
yy
(復制光標所在行的內容到緩存區)
nyy
:從光標所在行開始復制n行 - 粘貼:
p
(粘貼至光標所在行的下一行)
P
(粘貼至光標所在行的上一行) - 字符復制:按v進入可視模式
v
:逐個字符復制,可從某一行的任意位置進行復制
V
:按行復制
選中要復制的正文后,按y鍵進行復制,按p鍵進行粘貼 - 刪除和撤銷
dd
:整行的刪除
ndd
:刪除此后的n行正文
dw
:刪除光標之后的一個字
ndw
:刪除光標之后的n個字符
x
:刪除光標所在的一個字符
nx
:刪除光標所在位置及其后的n個字符 -
u
:撤銷
rc
:替換(用c代替當前字符,C可以是任意字符)
nrc
:用n個字符替換光標之前的n個字符 - 行間快速跳轉
H
:跳轉到屏幕的最上方
M
:跳轉到屏幕的中間
L
:跳轉到屏幕的最下方
nl
:
gg
:快速跳轉到第一行
G
:跳轉到最后一行
6,末行模式
:n
跳轉到指定行
:q
退出
:q!
強制退出
:w
保存
:w!
強制保存
:wq
保存退出
:wq!
強制保存退出
:qa
全部退出(多文件編輯時)
:wqa
全部保存退出
:wa
全部保存
:nw file
將第n行寫入file文件
:a,bw file
將文件a 到 b 行寫入file文件
:l,.w file
將第一行到當前行寫入file文件
:f file
文件重命名
:f
打印文件的基本信息
字符串(string)搜索
/string
正向搜索,跳轉到第一次出現的位置;按字母n跳轉到下一次出現的位置;搜索完之后,會再次從文件頭開始搜索
?string
反向搜索,同上
多文件編輯
vi file file1 file2 file3 ...
分屏查看/編輯
vi -o file.doc file1.doc ...
豎屏分屏編輯
vi -O file.doc file1.doc ...
:vs file
豎屏分屏打開file文件
:sp file
橫屏分屏打開file文件
vi -x filename
文件加密
二、Shell腳本
1,簡介
優點:快速開發,無需編譯,事實修改
缺點:運行效率低,支持數據類型少
2,簡單的shell程序
echo "hello world!"
輸出hello world!
并換行。
3,常量
數字常量:1 2 3 4 5
字符常量:a b c d e
字符串常量:"hello" "world"
4,簡單的變量使用
1)變量名=值
變量的賦值時等號兩邊不能有空格!
$
:應用變量值
echo
:輸出變量的值
2)變量名
變量名可以由字母,數字,下劃線組成,通常用大寫字母表示,便于區分。
變量名不能以數字開頭
3)變量的是使用
變量在使用的時候無需指定數據類型,shell是一個動態決定數據類型的語言。變量使用時直接賦值,即“變量名=值”。等號兩側無空格!!
變量在引用的時候,形式為:$變量名
常以形式:${變量名} 或者 “$變量名”或者“${變量名}”
4)變量的賦值
Shell里面變量的賦值均以字符串的形式賦值。
%m.nf
浮點型的應用
m
:輸出的總位數(加小數點位)
n
:小數點后保留的位數
若小數部分+小數點+整數部分<m,則多出部分用空格代替輸出右對齊方式輸出
%-m.nf
和以上的對齊方式不同
作業
1,熟練使用vi編輯器,并掌握常用命令
yy
:復制,p
:粘貼,v
:逐個字符復制,dd
:整行的刪除,u
:撤銷,rc
:替換,q
:退出,!
:強制,w
:保存,
2,練習Shell腳本的基本語法
變量名通常大寫
賦值時,通常都以字符串的格式賦值進去。
打印語句:printf "%d" ${NUM}
echo ${NUM}
3,實現字符串的拼接和分割
4,預習if,case,以及循環語句
已完成