指针操作
指针的值即为指针指向的地址;
●赋值---------------把一个地址赋给指针。通常使用数组名或地址运算符&来进行赋值;
注意:地址应该和指针的类型是互相兼容的。也就是说,不能把一个double类型的地址赋给一个指向int的指针。
●求值---------------运算符*可取出指针指向地址中存储的数值。
●取指针地址------指针变量同其他变量一样具有地址和数值,使用&可以得到存储指针本身的地址。
变量不会因为它的值的变化而移动位置;
创建一个数组有三种方法:
(1)声明一个数组,声明时用常量表达式指定数组的维数,然后可以用数组名来访问数组元素;
(2)声明一个变长数组,声明时用变量表达式来指定数组维数,然后用数组名来访问数组元素;
(3)声明一个指针,调用malloc(),然后使用该指针来访问数组元素。
一般地,对应每个malloc( )调用,应该调用一次free( )。函数free()的参数是先前malloc()返回的地址,它释放先前分配的内存。每次调用free()将内存归还到池里,使内存可再次被利用。free()参数应是一个指针,指向由malloc()分配的内存块;不能使用free()来释放其他方式(如声明一个数组)分配的内存。
在头文件stdlib.h中保存有malloc()和free()的原型。