c语言函数参数为数组指针,C语言数组作为函数参数

c语言指针数组做函数参数, 来大神。怎么办?

strcmp的参数里p[j]和p[j+1]是指针数组的元素,里边存放的是字符串的首地址。在C语言中,字符串都是用首地址来表明的,所以可以吧指针数组中的地址值说成是代表字符串。

为哈尔滨等地区用户提供了全套网页设计制作服务,及哈尔滨网站建设行业解决方案。主营业务为做网站、网站设计、哈尔滨网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

c语言编程 指针数组作为函数参数

#includestdio.h

#includestring.h

int main()

{

void sort1(char **p1);

void print(char **p2);

static char *name[]={"zhang","wang","li","zhao","abe"};

sort1(name);

print(name);

return 0;

}

void sort1(char **p1)

{

int i,j;

char *p;

for(i=0;i4;i++)

for(j=i+1;j5;j++)

if(strcmp(p1[i],p1[j])=0)

{

p=p1[i];

p1[i]=p1[j];

p1[j]=p;

}

}

void print(char *p2[])

{

int i;

//getchar();

for(i=0;i5;i++)

printf("%s\n",*(p2+i));

}

请问在C语言中,函数传参时怎样利用指针传递数组

数组名就是指针,例如:

#include stdio.h

void pr(char *p)

{

printf(p);

}

void main(void)

{

char s[] = "abc";

pr(s);

}

扩展资料:

注意事项

非数组类的声明尽量以指针的方式进行比较好。倘若一个指针指向的内存并不是一个数组,那么采用数组名的声明方式或许就会给人产生错误的引导。类似的,如果指向的是一个数组区域,则会给人以更加丰富的信息。例如:

int main(int argc,char* argv[])

{

/* code here */

}

int main(int argc,char** argv)

{

/* code here */

}

两种方式完全等价,但是前面一种能够更清晰地看出:这个参数是指向某个元素起始地址的指针,而后面的这种方式则不能够直观地看出这种含义。


当前文章:c语言函数参数为数组指针,C语言数组作为函数参数
当前链接:http://myzitong.com/article/hoepjo.html