①int arr1[]={1,2,3,4,5,6,7,8,9,10}
int sz=sizeof(arr1)/sizeof(arr1[0])
其中sizeof(arr1)是整个数组的长度,而sizeof(arr[0])是一个元素的长度,以上sz求出的即是整个数组的长度。
②char arr2[]="hello bit"
如果再用sizeof()的话求出的字符长度中就包括\n,我们认为若这样计算数组末元素未知的话必须在sz的基础是那个-2.这时如果我们想摆脱\n可以用strlen(arr2)/strlen(arr2[0])-1得出的就是我们所要求的末元素角标。代码如下:
int main()
{
char arr1[] = "我是大帅哥不服闭嘴";
char arr2[] = "##################";
int right = strlen(arr2) - 1;
int left = 0;
while (left <= right)
{
arr2[left] = arr1[left];
arr2[right] = arr1[right];
printf("%s\n", arr2);
Sleep(1000);
system("cls");
left++;
right--;
}
return 0;
}