(*指针变量名)(实参)
*指针变量名=替代函数名
int (*p)();
p=swap;
(*p)(&a,&b);
函数返回指针的注意事项:局部变量地址不能返回;
数组:同质、连续、有序
标识符的5个规则:
1.标识符只能有字母、数字、下划线组成
2.只能由字母、下划线开头,不能是关键字
3.C语言对英文字母的大小写敏感
4.保留字不能使用
5.标识符长度如果超出则被舍弃,一般不能超过32位。
C语言是强类型语言,必须先定义类型在使用。
static int a[4] 等价于 static int a[4]={0,0,0,0}
windows 里如果部分初始化,其他未初始化的则全为0;
Linux中 则是 垃圾值;
三种交换的方式
一
a=t;
t=b;
b=a;
二
a=a+b;
b=a-b;
a=a-b;
三
a=a^b;
b=a^b;
a=a^b;
fun( int a[ ] , int n) 这里的a[ ] 并不是数组 ,其实是指针
形参数组只是一个形式, 本质上是指针。
实参的地址值和形参的地址值 都指向同一个地址时,修改地址里的内容 即双向传递
实参的内容也会被修改,如果只是修改形参的地址值而不是地址内容,那么还是单向传递。
只将实参的首地址传给形参数组,并不知道结尾的地址。
所以形参数组的大小是不起任何作用的。
实参、形参 可同名,也可不同名,
因为都有独立的栈空间 ,不会互相影响。
课上练习1:
打印前十行的杨辉三角形
运行结果
课上练习2:
打印一个转置矩阵
运行结果