C语言 如何给字符指针数组赋值
发布网友
发布时间:2022-05-22 07:36
我来回答
共4个回答
热心网友
时间:2024-03-07 09:01
字符指针数组的赋值和普通数组的赋值是一样的,只不过字符指针数组里的元素是指针。
以下是字符指针数组赋值的示例:
char* pChar[5];
char str1[] = "First";
char str2[] = "Second";
char str3[] = "Third";
char str4[] = "Fourth";
char str5[] = "Fifth";
pChar[0] = str1;
pChar[1] = str2;
pChar[2] = str3;
pChar[3] = str4;
pChar[4] = str5;
for (int i=0;i<5;i++)
{
printf("pChar[%d] = %s\n",i,pChar[i]);
}
热心网友
时间:2024-03-07 09:02
你那样只是定义了5个指针,并没有给每个指针分配相应的内存空间,当然会出错
gets函数的参数是一个字符指针,应该用gets(p[i]);
char *p[5];
char *d;
char p1[5][20];
int i,j;
printf("输入5个城市\n");
for(i=0;i<5;i++)
{
p[i] = p1[i];
gets(p[i]);
}
.......
热心网友
时间:2024-03-07 09:02
要先申请数组空间,不然没办法赋值
热心网友
时间:2024-03-07 09:03
gets(*(p[i]));
gets函数后的参数不能是 char*只能是char