知识点:学习指针数组和多重指针
什么是指针数组?
指针数组:一个数组,若其元素均为指针类型数据,称为指针数组。
定义:int *p[4]; //这是指向一位数组的指针变量
定义一维指针数组的一般形式为 类型名*数组名[数组长度];
首先定义一个数组长度为5的指针数组对它进行赋值
char *name[5] = { "asd", "zxc", "qwe", "asdfg", "zxchj" };
可知name是一个指针数组,它的每一个元素是一个指针型的变量,其值为地址。
name是数组,那么它的每一个元素都应有相应的地址。
数组名name代表该指针数组首元素的地址,name+i是name[i]的地址
#include<stdio.h>
#include<windows.h>
void hanshu(char *name[5])
{
char *t;
int i, j;
for (i = 0; i < 4; i++)
{
for (j = i + 1; j < 5; j++)
{
if (strcmp(name[i], name[j]) == 1)
{
t = name[i];
name[i] = name[j];
name[j] = t;
}
}
}
}
void main()
{
int i;
char *name[5] = { "asd", "zxc", "qwe", "asdfg", "zxchj" };
hanshu(name);
for (i = 0; i < 5; i++)
printf("%s\n", name[i]);
system("pause");
}
输出结果