23,120
社区成员
发帖
与我相关
我的任务
分享
int main()
{
char *p;
char *argName[8];
char *argValue[8];
int i;
int c;
for (i=0; i<8; i++)
{
argName[i] = malloc(64);
argValue[i]= malloc(64);
}
i=0;
p=argName[0];
while (i<8)
{
c=getchar();
if (c=='=')
{
*p = '\0';
p = argValue[i];
}
else if (c=='&')
{
*p = '\0';
p = argName[++i];
}
else
*p++ = c;
}
for (i=0; i<8; i++)
{
printf("%d: %s, %s\n", i, argName[i], argValue[i]);
}
for (i=0; i<8; i++)
{
free(argName[i]);
free(argValue[i]);
}
return 0;
}
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main()
{
char *html = "name1=value1&name2=nalue2&name2=nalue2&name3=nalue3&name4=nalue4&name5=nalue5&name6=nalue6&name7=nalue7&name8=nalue8";
char *p=html;
char *argName[8];
char *argValue[8];
int i, j;
for (i=0; i<8; i++)
{
argName[i] = malloc(64);
argValue[i]= malloc(64);
}
for (i=0; i<8; i++)
{
for (j=0; j<64 && *p && *p!='='; j++, p++)
argName[i][j] = *p;
p++;
for (j=0; j<64 && *p && *p!='&'; j++, p++)
argValue[i][j] = *p;
p++;
}
for (i=0; i<8; i++)
{
printf("%d: %s, %s\n", i, argName[i], argValue[i]);
}
for (i=0; i<8; i++)
{
free(argName[i]);
free(argValue[i]);
}
return 0;
}
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main()
{
char *html = "name1=value1&name2=nalue2&name2=nalue2&name3=nalue3&name4=nalue4&name5=nalue5&name6=nalue6&name7=nalue7&name8=nalue8";
char str[512];
char *argName[8];
char *argValue[8];
char *delim = "&=";
char *tok;
int i;
for (i=0; i<8; i++)
{
argName[i] = malloc(64);
argValue[i]= malloc(64);
}
strcpy(str, html);
tok = strtok(str, delim);
for (i=0; i<8 && tok!=NULL; i++)
{
strcpy(argName[i], tok);
tok = strtok(NULL, delim);
if (tok == NULL)
break;
strcpy(argValue[i], tok);
tok = strtok(NULL, delim);
}
for (i=0; i<8; i++)
{
printf("%d: %s, %s\n", i, argName[i], argValue[i]);
}
for (i=0; i<8; i++)
{
free(argName[i]);
free(argValue[i]);
}
return 0;
}