地址:http://edu.51cto.com/course/course_id-618.html
紧接马哥linux专题
第一讲
Bash变量:
1byte=
-128,127
2bytes
-32768,32767
负数使用补码表示的
保存浮点数:
1.23 25.00
符号:0.123*10
二进制:1.11 => 0.111*2 => 0.0111*2^2
整数和浮点数保存完全不一样
ASCII美国标准信息代码:127个基本字符
127,7
0-127, 0000 000 - 1111 111
字节=8bit,计算机最小存储单位是8位
按照字符串需要24位,需要数字仅仅8位就行了。
超过位数,溢出,左边截取。
字符
数值:整数,浮点数(单精度,双精度)
程序:
编译型语言(静态语言): C, C++
变量类型(强类型语言,变量必须有类型)
字符
数值
整数
浮点数
脚本型语言(动态语言):解释执行,依赖于解释器(bash)
变量(弱类型)
默认识别为字符型
类型装换
AGE+3 兼容的方向转变
AGE=23,保存格式是整数还是浮点数还是字符
变量的生命周期
C:内存泄露,手动申请和释放内存。哪个申请哪个回收
malloc,
Java, 垃圾回收器。不用关心内存释放,效率低。Java效率低于C至少百分之三十。
源程序-->编译-->链接->执行
第二讲
脚本语言:源程序->使用解释器解释执行
bash变量类别
本地变量:作用范围仅限于当前程序文件。变量仅对当前shell有效,子进程和其他shell都无效。还有比本地范围更小的局部变量,局部变量仅限于代码段,比如一个函数内。
环境变量
特殊变量
位置变量
Bash的引号:
"双引号" 弱引用
'带引号' 强引用
`反引号` 命令替换
变量替换, echo "$age"
echo
-n 不换行
-e 让转义生效 \t \n
shell还可以有子shell,在一个进程中,又打开一个shell,即敲下bash命令。
declare 生命一个变量,也可以生命类型
declare -i生命一个数值
declare -i生命一个数组
手动撤销变量
unset VARNAME
只读变量
readonly VARNAME