把具有相同类型的若干变量按有序的形式组织起来,这些按序排列的同类数据元素的集合称为数组。按数组元素的类型不同,数组又可分为数值数组、字符数组、指针数组、结构数组等各种类别,因此,字符数组是数组的一种。字符数组实际上是一系列字符的集合,也就是字符串(String)。
由此可得:在函数中传递一个字符串与传递一个数组类似,可参考c函数传递数组
一 形式参数
在函数中传递一个字符串作为参数,以下面三种方式来声明函数形式参数,这三种声明方式的结果是一样的,因为每种方式都会告诉编译器将要接收一个字符指针。
1 形式参数是一个字符指针:
void function(char *p)
{...}
2 形式参数是一个已定义大小的字符数组
void function(char array[10])
...}
3 形式参数是一个未定义大小的字符数组
void function(char array[])
{...}
二 调用方式
字符数组名是一个指向字符数组中第一个字符元素的常量指针,将字符数组名(常量指针)传递给函数
char str[20]="hello world!"
func(str);
三 案列展示
#include<>
void func(char s);
int main(){
char str[20] = "hello world!"
func(str);
return;
}
void func(char s[]){
printf("%s", s)
return;
}