读书人

C语言实现URL字符串的分割,该如何处理

发布时间: 2012-03-24 14:00:46 作者: rapoo

C语言实现URL字符串的分割
以下是代码,gcc编译出现
错误:expected ‘;’ before ‘{’ token 请大家帮我看下,我不知道问题到底出在哪里了,先谢了!!!



#include <stdio.h>
#include <string.h>
#include <stdlib.h>

//#define MAX_PER_LINE 100


char* url_parting(char* buf)
{
int i=0;
char *url;
int len = strlen(buf);
printf("%d\n",len);
printf("in the url_parting\n");
while(i<len-1)
{
if(buf[i] != '/')
{
url[i] = buf[i];
}
else
{
if(buf[i] == '/' && buf[i+1]!='/')
{
url[i] = '\n';
}
else(buf[i] == '/' && buf[i+1]=='/')
{
url[i]=buf[i];
url[++i]=buf[i];
}
}
i++;
}
url[i+1] = '\0';
printf("end of url_parting\n");
return url;
}


int main()
{
//char str[100] = "http://www.youku.com/kjfi/jfi/gil";
char *str;
scanf("%s",str);
printf("in the main\n");
char* str1 = url_parting(str);
printf("%s\n",str1);
return 0;
}

[解决办法]
else(buf[i] == '/' && buf[i+1]=='/')
漏掉if了吧?
[解决办法]

C/C++ code
#include <iostream>using namespace std;#include <stdio.h>#include <string.h>#include <stdlib.h>//#define MAX_PER_LINE 100char* url_parting(char* buf){  int i=0;  char *url;  int len = strlen(buf);  printf("%d\n",len);  printf("in the url_parting\n");  while(i<len-1)  {      if(buf[i] != '/')      {          url[i] = buf[i];      }      else      {          if(buf[i] == '/' && buf[i+1]!='/')          {              url[i] = '\n';          }          else if(buf[i] == '/' && buf[i+1]=='/')//这里少了if          {              url[i]=buf[i];              url[++i]=buf[i];          }      }      i++;  }  url[i+1] = '\0';  printf("end of url_parting\n");  return url;}int main(){  //char str[100] = "http://www.youku.com/kjfi/jfi/gil";  char *str;  scanf("%s",str);  printf("in the main\n");  char* str1 = url_parting(str);  printf("%s\n",str1);  return 0;} 

读书人网 >C语言

热点推荐