一、shell
1.shell的定义: shell是一个命令解析器,将用户输入的指令转化为机器可以运行的程序
2.shell中的默认变量
$# :传入脚本的命令行参数个数
$* :所有输入的命令行参数值(在各个参数值之间留有空格)
$?:保存返回值
$0 :命令本身(shell文件名)
$1:第一个命令行参数
$2:第二个命令行参数
$3:第三个命令行参数
3.注意点
(1)首行必须加#!/bin/bash或#!/bin/sh(sh和bash是两个不同版本的shell脚本);
(2)文件名以“.sh”结尾
(3)用./就可以运行shell程序;
二、数据类型及大小
1.指针都是4个字节,char*、int*等等都是4个字节
2.默认的都是有符号型
3.sizeof和strlen的区别
例1:char *str=”hello”;
sizeof(str)为4
strlen(str)为5
例2:char a[1000];
for(i=0;1<1000;i++)
{
a[i]=i+1;
}
sizeof(str)为1000
strlen(str)为255
小结:sizeof计算的是一种类型的大小,strlen计算的是一个变量实际所占内存的大小
4.volatile防止编译时被优化
const修饰只读变量
例:const int cc =3;只能说明cc是只读变量,不能通过cc这个变量改变其对应空间的值
5.const int *p; p所指向空间里的值不变
int * const p; p指向的空间不变
const int * constp; p所指向空间里的值不变并且p指向的空间不变