求大家帮忙!很急的问题。
现在我有一个字符串数组char d[90]="Goldenl=vieldd=ldjla=dljal"; 和几个空字符数组a[20];b[20];c[20]; 如何把前面数组中的“=”后面的数组分别赋值给a,b,c 也就是操作后a[20]="vieldd"; b[20]="ldjla"; b[20]="dljal"
程序代码:#include<stdio.h>
int main()
{
char d[90]="Goldenl=vieldd=ldjla=dljal";
char a[20],b[20],c[20];
int i=0,k=0;
while(d[i]!='=')i++; i++;
while(d[i]!='=')a[k++]=d[i++];
a[k]='\0'; i++; k=0;
while(d[i]!='=')b[k++]=d[i++];
b[k]='\0'; i++; k=0;
while(d[i]!='\0')c[k++]=d[i++]; c[k]='\0';
printf("%s\n%s\n%s\n",a,b,c);
return 0;
}

程序代码:# include <stdio.h>
# include <string.h>
int main()
{
char d[] = "Goldenl=vieldd=ldjla=dljal";
char a[20], b[20], c[20];
char *token, *p[3];
int i = 0;
p[0] = a;
p[1] = b;
p[2] = c;
token = strtok(d, "=");
while(token != NULL)
{
token = strtok(NULL, "=");
strcpy(p[i], token);
i++;
}
puts(a);
puts(b);
puts(c);
return 0;
}
