c语言指针数组函数传递
时间: 2023-07-27 11:07:39 浏览: 125
在 C 语言中,指针数组是一种数组类型,其中每个元素都是一个指针。可以将指针数组作为函数参数传递,并在函数内部使用。
下面是一个示例,演示了如何将指针数组作为函数参数传递:
```c
#include <stdio.h>
#include <stdlib.h>
void printStrings(char *strings[], int count) {
for (int i = 0; i < count; i++) {
printf("%s\n", strings[i]);
}
}
int main() {
char *strings[] = {
"Hello",
"World",
"from",
"C",
};
int count = sizeof(strings) / sizeof(char *);
printStrings(strings, count);
return 0;
}
```
在上面的例子中,我们定义了一个指针数组 `strings`,其中每个元素都是一个指向字符数组的指针。我们还定义了一个 `printStrings` 函数,该函数接受一个指向指针数组的指针 `strings` 和一个整数 `count`,并在函数内部使用循环遍历指针数组,并打印每个字符串。在 `main` 函数中,我们创建了一个指针数组 `strings`,并计算了它的大小。然后,我们调用 `printStrings` 函数,并将指针数组 `strings` 和它的大小作为参数传递给该函数。
需要注意的是,由于指针数组本身是一个指针,因此在传递指针数组时,需要将其声明为指向指针数组的指针。因此,在上面的例子中,我们在 `printStrings` 函数中将指针数组声明为 `char *strings[]`,而不是 `char strings[][]`。
阅读全文