我从我的大学接到一项任务,就是使用函数中的指针来查找字符串的长度。这是我的代码:
#include <stdio.h>
#include <stdlib.h>
#define max 100
int lengthchar(char *array1[])
{
int a, x = 0;
for (a = 0; *(array1++) != '\0'; a++)
{
x++;
}
return x;
}
int main()
{
char arr1[max];
int length;
printf("Enter string\n");
gets(arr1);
length = lengthchar(arr1);
printf("Length=%d", length);
return 0;
}
但是当我输入以下信息时:
输入字符串:av
Length = 9
它显示了错误的长度,我的错误是什么?
这是因为将字符串指针作为参数传递给函数的方式。