1.指针数组
指针数组,顾名思义,就是存放指针的数组,它的本质还是数组,它与数组指针不同,不要搞混了。
int *parr[3];指针数组
int(*parr)[3];数组指针·
2.const与指针的结合
用const标记的值就是一个常性的值,是不能够被改变的,它多用于函数的内部设计,例如,如果要进行s1和s2两个字符串的比较,那么他们的值是不需要改变的,因此可以在连个字符串前加const修饰,表示它的“常性”。
char a,b;
char*p=&a;
char**q=&p;
const char c='c';//定义一个常性const的字符c,并且给它赋值c
const char *s=&c;//因为c是常性的,所以用来指向他的地址的指针s也是常性的
const char**t=&s;//因为一级指针s是const来修饰的,所以用来指向他的二级指针t也应该是const来修饰
char d='d';
const char*pd==&d;//虽然d不是常性,但是可以用一个权限较小的常性的一级指针pd来指向它
const char**w=&pd;//因为一级指针pd是const来修饰的,所以用来指向他的二级指针w也应该是const来修饰
char *const ps=&d;
char*const*r=&ps;
#define SIZE 10
const char* names[SIZE]; //指针数组来存放常性的名字
int size; //有效数据个数 注册操作
//login("zs");
bool Login(const char* name) //登录函数
{
for (int i = 0; i < size; i++)
{
if (strcmp(names[i] , name) == 0)
{
return true;
}
}
return false;
}
bool Register(const char* name)//注册函数
{
if (size == SIZE) return false;
names[size] = name; //names[size]类型指针
size++;
return true;
}