首先还是用一道题目来更好的了解如何做到将main函数中的数组通过什么方式使得其在自定义的一个函数中能够使用。
题目:在main函数中定义一个数组并为其赋值,然后自定义一个函数order(),使得main函数中的数组能够在order函数中引用并输出。
源代码:
#include <stdio.h>
#include <string.h>
void order(char* str,int k)
{
int i, j;
for (i = 0; i < k; i++)
{
printf("%c\t", *str);
str++;
}
}
int main()
{
char arr[] = "abcdefg";
int n;
n = strlen(arr);
order(arr,n);
}
首先先确定main函数中有什么内容,第一个是定义一个数组arr,并为其赋值abcdefg,然后定义一个计算字符串长度的变量n,通过strlen库函数计算arr数组中有多少个字符,并把值赋给n,然后调用order函数,并把arr和n传送到order函数中,值得注意的是这里传送给order函数的arr其实只是把arr的第一个字符的地址传送了过去,也就是把字符'a'的地址传到了order函数,然后order函数用指针变量str接收,指针变量用char*定义,然后再定义一个整型变量k接收n的大小。
下一步就是进入到了