一、用数组存储字符串,在数组中按顺序存储串中的字符,然后以空字符"\0"结束。因此数组的长度需要比实际存储串的长度要大1。
二、scanf("", *p,...) // 第一个参数是数据类型,其他参数为地址。
三、sizeof是内置运算符,以字节为单位给出指定类型的大小; string.h头文件提供的strlen获取的是串的实际长度。
eg: int arr[40] = {0};
sizeof(arr) == 40;
调试program:
/* --test.c--*/
#include <stdio.h>
#include <string.h>
int main(void)
{
char arr[20] = {0};
int arr1[20] = {0};
printf("Please Enter Your Name.\n");
scanf("%s", &arr);
printf("name = %s\n", arr);
printf("%d %d\n", sizeof(arr), strlen(arr));
printf("%d\n",sizeof(arr1));
return 0;
}
程序运行结果: