1.如何得到数组的大小?
将数组和表示数组大小的的值一起传给函数,比如:
char source [MAX] ,dest [MAX];
/*......*/
memcpy (dest, source, MAX);
2.指针和地址
指针意味着已经有一个指针变量的存在,它的值是一个地址,指针变量本身也放在一个长度为4字节的地址当中,而地址概念本身不代表任何变量的存在。指针的值如果没有固定,是可以变化的,也可以指向另一个地址。
3.指针和数组名的关系
它们的值都是一个地址,当时指针的值可以变化,而数组的值是不能变的。
4.指针类型的变换
指针转换通常是指指针类型和void*类型之间的转换。
5.可以把一个地址赋给一个数组名吗?
不行,数组名不能被放在赋值运算符的左边,一个数组是一个对象,它的数组名就是指向这个对象的第一个元素的指针。
6.字符串与数组的区别
数组的元素可以是任意一个类型,而字符串是一种特殊类型的数组。
7.指针是什么?
(1)系统为指针分配内存空间
(2)指针有自己的地址
(3)指针能够存值,但这个值是地址
8.指针如何运算
(1)指针±整数 只能用于数组中某个元素的指针
(2)指针-指针 只有当两个指针都指向同一个数组中的元素时,才允许从一个指针减去另一个指针。
9.指针数组与数组指针
(1)指针数组定义了一个数组,数组包含了N个指针变量,p【0】,p【1】。。。。。。p【N-1】。
(2)数组指针定义了一个指向N个数据元素的二维数组的指针。
10.入门的一些注意点
在使用指针前必须要注意的是:首先要分配地址,再者要初始化,然后在操作中不能超过边界,最后用完要释放内存。