//程序作者:管宁
//站点:www.cndev-lab.com
//所有稿件均有版权,如要转载,请务必闻名出处和作者
#include <iostream>
#include <string>
usingnamespacestd;
voidPRint_char(char* array[],intlen);//函数原形声明
voidmain(void)
{
//-----------------------------段1-----------------------------------------
char*a[]={"abc","cde","fgh"};//字符指针数组
char* *b=a;//定义一个指向指针的指针,并赋予指针数组首地址所指向的第一个字符串的地址也就是abc/0字符串的首地址
cout<<*b<<""<<*(b+1)<<""<<*(b+2)< //-------------------------------------------------------------------------
//-----------------------------段2-----------------------------------------
char* test[]={"abc","cde","fgh"};//注重这里是引号,表示是字符串,以后的地址每加1就是加4位(在32位系统上)
intnum=sizeof(test)/sizeof(char*);//计算字符串个数
print_char(test,num);
cin.get();
//-------------------------------------------------------------------------
}
voidprint_char(char* array[],intlen)//当调用的时候传递进来的不是数组,而是字符指针他每加1也就是加上sizeof(char*)的长度
{
for(inti=0;i {
cout<<*array++< }
}
下面我们来仔细说明一下字符指针数组和指向指针的指针,段1中的程序是下面的样子: char*a[]={"abc","cde","fgh"};
char* *b=a;
cout<<*b<<""<<*(b+1)<<""<<*(b+2)<
新闻热点
疑难解答